Скопируйте выделенный текст из PDF в PyQt5 QWebEngineViewPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Скопируйте выделенный текст из PDF в PyQt5 QWebEngineView

Сообщение Anonymous »

Я использую PyQt5.QtWebEngineWidgets для отображения PDF-файла и пытаюсь получить выделенный текст.
Использование hasSelection() и selectedText() работает с HTML файлы, но происходит сбой, когда в веб-представлении отображается PDF-файл. Есть идеи, как скопировать выделенный текст (кроме использования CTRL+C)?
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QMenu
from PyQt5.QtWebEngineWidgets import QWebEngineSettings, QWebEngineView

class Browser(QWebEngineView):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)

def get_selection(self):
if self.hasSelection():
print(self.selectedText())
else:
print('No text selected')

def contextMenuEvent(self, event):
self.menu = QMenu()
get_selection = self.menu.addAction('Copy')
get_selection.triggered.connect(self.get_selection)
self.menu.popup(event.globalPos())

class MainWindow(QMainWindow):
def __init__(self):
super(QMainWindow, self).__init__()
self.setWindowTitle("PDF Viewer")
self.setGeometry(0, 28, 1000, 750)
self.webView = QWebEngineView()
self.webView = Browser()
self.webView.settings().setAttribute(QWebEngineSettings.PluginsEnabled, True)
self.webView.settings().setAttribute(QWebEngineSettings.PdfViewerEnabled, True)
self.setCentralWidget(self.webView)

if __name__ == '__main__':

import sys
app = QApplication(sys.argv)
win = MainWindow()
win.show()
win.webView.setUrl(QUrl.fromLocalFile("d:/test.pdf"))
sys.exit(app.exec_())


Подробнее здесь: https://stackoverflow.com/questions/741 ... engineview
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Получить выделенный/выделенный текст в CKEDITOR 5
    Anonymous » » в форуме Jquery
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous
  • Скопируйте выделенный текст из одного документа в другой документ с помощью Python-docx
    Anonymous » » в форуме Python
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • PyQt5: Как загрузить значок для QWebEngineView?
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Конфликт между Qwebengineview и Qvideowidget pyqt5? [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Конфликт между Qwebengineview и Qvideowidget pyqt5? [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»