diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ede82543..7b8e1d498 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,456 +1,465 @@ cmake_minimum_required(VERSION 3.0) # KDE Application Version, managed by release script set (KDE_APPLICATIONS_VERSION_MAJOR "18") set (KDE_APPLICATIONS_VERSION_MINOR "07") set (KDE_APPLICATIONS_VERSION_MICRO "70") set (KDE_APPLICATIONS_VERSION "${KDE_APPLICATIONS_VERSION_MAJOR}.${KDE_APPLICATIONS_VERSION_MINOR}.${KDE_APPLICATIONS_VERSION_MICRO}") project(okular VERSION 1.4.${KDE_APPLICATIONS_VERSION_MICRO}) set(QT_REQUIRED_VERSION "5.8.0") set(KF5_REQUIRED_VERSION "5.33.0") find_package(ECM 5.33.0 CONFIG REQUIRED) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH}) include(ECMInstallIcons) include(ECMSetupVersion) include(ECMOptionalAddSubdirectory) include(GenerateExportHeader) include(FeatureSummary) include(ECMAddAppIcon) include(KDECompilerSettings NO_POLICY_SCOPE) include(KDEInstallDirs) include(KDECMakeSettings) include(ECMAddTests) include(ECMAddAppIcon) include(CMakePackageConfigHelpers) ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX OKULAR VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/core/version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/Okular5ConfigVersion.cmake") find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED COMPONENTS Core DBus Test Widgets PrintSupport Svg Qml Quick) find_package(Qt5 ${QT_REQUIRED_VERSION} OPTIONAL_COMPONENTS TextToSpeech) if (NOT Qt5TextToSpeech_FOUND) message(STATUS "Qt5TextToSpeech not found, speech features will be disabled") else() add_definitions(-DHAVE_SPEECH) endif() if(NOT CMAKE_VERSION VERSION_LESS "3.10.0") # CMake 3.9+ warns about automoc on files without Q_OBJECT, and doesn't know about other macros. # 3.10+ lets us provide more macro names that require automoc. list(APPEND CMAKE_AUTOMOC_MACRO_NAMES "OKULAR_EXPORT_PLUGIN") endif() set(optionalComponents) if (ANDROID) # we want to make sure that generally all components are found set(optionalComponents "OPTIONAL_COMPONENTS") endif() find_package(KF5 ${KF5_REQUIRED_VERSION} REQUIRED COMPONENTS Archive Bookmarks Completion Config ConfigWidgets CoreAddons Crash IconThemes KIO Parts ThreadWeaver WindowSystem ${optionalComponents} DocTools JS Wallet ) if(KF5Wallet_FOUND) add_definitions(-DWITH_KWALLET=1) endif() if(KF5JS_FOUND) add_definitions(-DWITH_KJS=1) endif() if(NOT WIN32 AND NOT ANDROID) find_package(KF5 ${KF5_REQUIRED_VERSION} REQUIRED COMPONENTS Activities ) set_package_properties("KF5Activities" PROPERTIES DESCRIPTION "Activities interface library" URL "https://api.kde.org/frameworks/kactivities/html/" TYPE RECOMMENDED PURPOSE "Required for Activities integration.") endif() find_package(KF5Kirigami2) set_package_properties(KF5Kirigami2 PROPERTIES DESCRIPTION "A QtQuick based components set" PURPOSE "Required at runtime by the mobile app" TYPE RUNTIME ) find_package(Phonon4Qt5 CONFIG REQUIRED) find_package(KDEExperimentalPurpose) set_package_properties(KDEExperimentalPurpose PROPERTIES DESCRIPTION "A framework for services and actions integration" PURPOSE "Required for enabling the share menu in Okular" TYPE OPTIONAL ) if (KDEExperimentalPurpose_FOUND) set(PURPOSE_FOUND 1) else() set(PURPOSE_FOUND 0) endif() set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake/modules) find_package(ZLIB REQUIRED) # This is here instead of in generators since we use if(Poppler_Qt5_FOUND) in autotests/ find_package(Poppler "0.12.1" COMPONENTS Qt5) set_package_properties("Poppler" PROPERTIES TYPE RECOMMENDED PURPOSE "Support for PDF files in okular.") add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS) add_definitions(-DTRANSLATION_DOMAIN="okular") add_definitions(-DQT_NO_URL_CAST_FROM_STRING) include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${PHONON_INCLUDES} core/synctex ${ZLIB_INCLUDE_DIR} ${CMAKE_BINARY_DIR}/core) add_subdirectory( mobile ) option(BUILD_COVERAGE "Build the project with gcov support" OFF) if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0.0") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wsuggest-override" ) endif() endif() if(BUILD_COVERAGE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov") endif() add_subdirectory( ui ) add_subdirectory( shell ) add_subdirectory( generators ) add_subdirectory( autotests ) add_subdirectory( conf/autotests ) if(KF5DocTools_FOUND) add_subdirectory(doc) endif() include(OkularConfigureChecks.cmake) if(NOT WIN32) set(MATH_LIB m) else(NOT WIN32) set(MATH_LIB) endif(NOT WIN32) # okularcore set(okularcore_SRCS core/action.cpp core/annotations.cpp core/area.cpp core/audioplayer.cpp core/bookmarkmanager.cpp core/chooseenginedialog.cpp core/document.cpp core/documentcommands.cpp core/fontinfo.cpp core/form.cpp core/generator.cpp core/generator_p.cpp core/misc.cpp core/movie.cpp core/observer.cpp core/debug.cpp core/page.cpp core/pagecontroller.cpp core/pagesize.cpp core/pagetransition.cpp core/rotationjob.cpp core/scripter.cpp core/sound.cpp core/sourcereference.cpp core/textdocumentgenerator.cpp core/textdocumentsettings.cpp core/textpage.cpp core/tilesmanager.cpp core/utils.cpp core/view.cpp core/fileprinter.cpp core/script/event.cpp core/synctex/synctex_parser.c core/synctex/synctex_parser_utils.c ) qt5_add_resources(okularcore_SRCS core/script/builtin.qrc ) ki18n_wrap_ui(okularcore_SRCS conf/textdocumentsettings.ui ) install( FILES core/action.h core/annotations.h core/area.h core/document.h core/fontinfo.h core/form.h core/generator.h core/global.h core/page.h core/pagesize.h core/pagetransition.h core/sound.h core/sourcereference.h core/textdocumentgenerator.h core/textdocumentsettings.h core/textpage.h core/tile.h core/utils.h core/fileprinter.h core/observer.h ${CMAKE_CURRENT_BINARY_DIR}/core/version.h ${CMAKE_CURRENT_BINARY_DIR}/core/okularcore_export.h ${CMAKE_CURRENT_BINARY_DIR}/settings_core.h DESTINATION ${KDE_INSTALL_INCLUDEDIR}/okular/core COMPONENT Devel) install( FILES interfaces/configinterface.h interfaces/guiinterface.h interfaces/printinterface.h interfaces/saveinterface.h interfaces/viewerinterface.h DESTINATION ${KDE_INSTALL_INCLUDEDIR}/okular/interfaces COMPONENT Devel) ki18n_wrap_ui(okularcore_SRCS core/chooseenginewidget.ui ) kconfig_add_kcfg_files(okularcore_SRCS conf/settings_core.kcfgc) add_library(okularcore SHARED ${okularcore_SRCS}) generate_export_header(okularcore BASE_NAME okularcore EXPORT_FILE_NAME "${CMAKE_CURRENT_BINARY_DIR}/core/okularcore_export.h") +if (ANDROID) + set(fileName ${CMAKE_BINARY_DIR}/Okular5Core-android-dependencies.xml) + file(WRITE "${fileName}" "\n" + "\n" + "\n") + install(FILES ${fileName} DESTINATION ${KDE_INSTALL_LIBDIR}) +endif() + + # Special handling for linking okularcore on OSX/Apple IF(APPLE) SET(OKULAR_IOKIT "-framework IOKit" CACHE STRING "Apple IOKit framework") ENDIF(APPLE) # Extra library needed by imported synctex code on Windows if(WIN32) set(SHLWAPI shlwapi) endif(WIN32) target_link_libraries(okularcore PRIVATE ${OKULAR_IOKIT} ${SHLWAPI} KF5::Archive KF5::KIOCore KF5::KIOWidgets KF5::I18n KF5::ThreadWeaver KF5::Bookmarks Phonon::phonon4qt5 ${MATH_LIB} ${ZLIB_LIBRARIES} PUBLIC # these are included from the installed headers KF5::CoreAddons KF5::XmlGui KF5::ConfigGui Qt5::PrintSupport Qt5::Widgets ) if (KF5Wallet_FOUND) target_link_libraries(okularcore PRIVATE KF5::Wallet) endif() if (KF5JS_FOUND) target_sources(okularcore PRIVATE core/script/executor_kjs.cpp core/script/kjs_app.cpp core/script/kjs_console.cpp core/script/kjs_data.cpp core/script/kjs_document.cpp core/script/kjs_field.cpp core/script/kjs_fullscreen.cpp core/script/kjs_field.cpp core/script/kjs_spell.cpp core/script/kjs_util.cpp core/script/kjs_event.cpp ) target_link_libraries(okularcore PRIVATE KF5::JS KF5::JSApi) endif() set_target_properties(okularcore PROPERTIES VERSION 9.0.0 SOVERSION 9 OUTPUT_NAME Okular5Core EXPORT_NAME Core) install(TARGETS okularcore EXPORT Okular5Targets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) install(FILES conf/okular.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR}) install(FILES conf/okular_core.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR}) install(FILES core/okularGenerator.desktop DESTINATION ${KDE_INSTALL_KSERVICETYPES5DIR}) # okularpart set(okularpart_conf_SRCS conf/preferencesdialog.cpp conf/dlgaccessibility.cpp conf/dlgdebug.cpp conf/dlgeditor.cpp conf/dlggeneral.cpp conf/dlgannotations.cpp conf/dlgperformance.cpp conf/dlgpresentation.cpp conf/editannottooldialog.cpp conf/editdrawingtooldialog.cpp conf/widgetannottools.cpp conf/widgetconfigurationtoolsbase.cpp conf/widgetdrawingtools.cpp ) set(okularpart_SRCS ${okularpart_conf_SRCS} part.cpp extensions.cpp ui/embeddedfilesdialog.cpp ui/annotwindow.cpp ui/annotationmodel.cpp ui/annotationpopup.cpp ui/annotationpropertiesdialog.cpp ui/annotationproxymodels.cpp ui/annotationtools.cpp ui/annotationwidgets.cpp ui/bookmarklist.cpp ui/debug_ui.cpp ui/drawingtoolactions.cpp ui/fileprinterpreview.cpp ui/findbar.cpp ui/formwidgets.cpp ui/guiutils.cpp ui/ktreeviewsearchline.cpp ui/latexrenderer.cpp ui/minibar.cpp ui/okmenutitle.cpp ui/pageitemdelegate.cpp ui/pagepainter.cpp ui/pagesizelabel.cpp ui/pageviewannotator.cpp ui/pageviewmouseannotation.cpp ui/pageview.cpp ui/magnifierview.cpp ui/pageviewutils.cpp ui/presentationsearchbar.cpp ui/presentationwidget.cpp ui/propertiesdialog.cpp ui/searchlineedit.cpp ui/searchwidget.cpp ui/sidebar.cpp ui/side_reviews.cpp ui/snapshottaker.cpp ui/thumbnaillist.cpp ui/toc.cpp ui/tocmodel.cpp ui/toolaction.cpp ui/videowidget.cpp ui/layers.cpp ) if (Qt5TextToSpeech_FOUND) set(okularpart_SRCS ${okularpart_SRCS} ui/tts.cpp) endif() ki18n_wrap_ui(okularpart_SRCS conf/dlgaccessibilitybase.ui conf/dlgeditorbase.ui conf/dlggeneralbase.ui conf/dlgannotationsbase.ui conf/dlgperformancebase.ui conf/dlgpresentationbase.ui ) kconfig_add_kcfg_files(okularpart_SRCS conf/settings.kcfgc) add_library(okularpart SHARED ${okularpart_SRCS}) generate_export_header(okularpart BASE_NAME okularpart) target_link_libraries(okularpart okularcore ${MATH_LIB} Qt5::Svg Phonon::phonon4qt5 KF5::Archive KF5::Bookmarks KF5::I18n KF5::IconThemes KF5::ItemViews KF5::KIOCore KF5::KIOFileWidgets KF5::KIOWidgets KF5::Parts KF5::Solid KF5::WindowSystem ) if(KF5Wallet_FOUND) target_link_libraries(okularpart KF5::Wallet) endif() if (KDEExperimentalPurpose_FOUND) target_link_libraries(okularpart KDEExperimental::PurposeWidgets) endif() set_target_properties(okularpart PROPERTIES PREFIX "") if (Qt5TextToSpeech_FOUND) target_link_libraries(okularpart Qt5::TextToSpeech) endif() install(TARGETS okularpart DESTINATION ${KDE_INSTALL_PLUGINDIR}) ########### install files ############### install(FILES okular.upd DESTINATION ${KDE_INSTALL_DATADIR}/kconf_update) install( FILES okular_part.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} ) install( FILES part.rc part-viewermode.rc DESTINATION ${KDE_INSTALL_KXMLGUI5DIR}/okular ) install( FILES okular.categories DESTINATION ${KDE_INSTALL_CONFDIR} ) ########### cmake files ################# set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/Okular5") configure_package_config_file( "${CMAKE_CURRENT_SOURCE_DIR}/Okular5Config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/Okular5Config.cmake" INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} PATH_VARS INCLUDE_INSTALL_DIR CMAKE_INSTALL_PREFIX ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/Okular5Config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/Okular5ConfigVersion.cmake" DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) install(EXPORT Okular5Targets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE Okular5Targets.cmake NAMESPACE Okular::) ########### summary ################# feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/mobile/android/AndroidManifest.xml b/mobile/android/AndroidManifest.xml new file mode 100644 index 000000000..f55a3fa82 --- /dev/null +++ b/mobile/android/AndroidManifest.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/android/res/drawable/icon.png b/mobile/android/res/drawable/icon.png new file mode 100644 index 000000000..6bd2cda63 Binary files /dev/null and b/mobile/android/res/drawable/icon.png differ diff --git a/mobile/android/res/values/libs.xml b/mobile/android/res/values/libs.xml new file mode 100644 index 000000000..231406d22 --- /dev/null +++ b/mobile/android/res/values/libs.xml @@ -0,0 +1,25 @@ + + + + https://download.qt-project.org/ministro/android/qt5/latest + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/android/res/values/strings.xml b/mobile/android/res/values/strings.xml new file mode 100644 index 000000000..c807a18a8 --- /dev/null +++ b/mobile/android/res/values/strings.xml @@ -0,0 +1,4 @@ + + + Okular + diff --git a/mobile/app/CMakeLists.txt b/mobile/app/CMakeLists.txt index 87994f1e9..da7d23ba5 100644 --- a/mobile/app/CMakeLists.txt +++ b/mobile/app/CMakeLists.txt @@ -1,7 +1,7 @@ set(CMAKE_AUTORCC ON) add_executable(okularkirigami main.cpp app.qrc) target_link_libraries(okularkirigami Qt5::Widgets Qt5::Qml KF5::I18n) install(TARGETS okularkirigami ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) -install(FILES package/metadata.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} RENAME org.kde.mobile.okular.desktop) - +install(FILES package/metadata.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} RENAME org.kde.okular.kirigami.desktop) +install( FILES org.kde.okular.kirigami.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} ) diff --git a/mobile/app/main.cpp b/mobile/app/main.cpp index 46fd141d9..e20a24372 100644 --- a/mobile/app/main.cpp +++ b/mobile/app/main.cpp @@ -1,62 +1,62 @@ /************************************************************************************* * Copyright (C) 2010 by Aleix Pol * * * * This program is free software; you can redistribute it and/or * * modify it under the terms of the GNU General Public License * * as published by the Free Software Foundation; either version 2 * * of the License, or (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the Free Software * * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * *************************************************************************************/ #include #include #include #include #include #include #include #include #include #include #include Q_DECL_EXPORT int main(int argc, char *argv[]) { #ifdef __ANDROID__ qputenv("QT_QUICK_CONTROLS_STYLE", "material"); #endif QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QApplication app(argc, argv); - app.setApplicationName(QStringLiteral("okularmobile")); + app.setApplicationName(QStringLiteral("okularkirigami")); QCommandLineParser parser; parser.addVersionOption(); parser.addHelpOption(); //parser.setApplicationDescription(i18n("Okular mobile")); parser.process(app); QQmlApplicationEngine engine; engine.rootContext()->setContextObject(new KLocalizedContext(&engine)); engine.rootContext()->setContextProperty(QStringLiteral("commandlineArguments"), parser.positionalArguments()); QVariantMap paths; paths[QStringLiteral("desktop")] = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); paths[QStringLiteral("documents")] = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); paths[QStringLiteral("music")] = QStandardPaths::writableLocation(QStandardPaths::MusicLocation); paths[QStringLiteral("movies")] = QStandardPaths::writableLocation(QStandardPaths::MoviesLocation); paths[QStringLiteral("pictures")] = QStandardPaths::writableLocation(QStandardPaths::PicturesLocation); paths[QStringLiteral("home")] = QStandardPaths::writableLocation(QStandardPaths::HomeLocation); engine.rootContext()->setContextProperty(QStringLiteral("userPaths"), paths); engine.setBaseUrl(QUrl("qrc:/package/contents/ui/")); engine.load(QUrl("qrc:/package/contents/ui/main.qml")); return app.exec(); } diff --git a/mobile/app/org.kde.okular.kirigami.appdata.xml b/mobile/app/org.kde.okular.kirigami.appdata.xml new file mode 100644 index 000000000..5b24ac49c --- /dev/null +++ b/mobile/app/org.kde.okular.kirigami.appdata.xml @@ -0,0 +1,215 @@ + + + org.kde.okular.kirigami.desktop + CC0-1.0 + GPL-2.0+ and GFDL-1.3 + Okular Mobile + Document Viewer + Visor de documentos + Visualitzador de documents + Visualitzador de documents + Prohlížeč dokumentů + Dokumentenbetrachter + Πρόγραμμα προβολής εγγράφων + Document Viewer + Visor de documentos + Dokumendinäitaja + Asiakirjakatselin + Afficheur de documents + Visor de documentos + Visor de documento + Visore di documenti + 문서 뷰어 + Documentenviewer + Dokumentvisar + Przeglądarka dokumentów + Visualizador do Documento + Просмотр документов + Prehliadač dokumentov + Pregledovalnik dokumentov + Приказивач докумената + Prikazivač dokumenata + Приказивач докумената + Prikazivač dokumenata + Dokumentvisare + Belge Görüntüleyicisi + Програма для перегляду документів + xxDocument Viewerxx + 文档查看器 + 文件檢視器 + +

+ Okular is a universal document viewer developed by KDE. Okular works on multiple platforms, including but not limited to Linux, Windows, Mac OS X, *BSD, etc. +

+

Okular ye un visor universal de documentos desendolcáu por KDE. Okular funciona en múltiples plataformes como Linux, *BSD, MacOS, Windows... etc.

+

L'Okular és un visualitzador universal de documents desenvolupat pel KDE. L'Okular funciona en diverses plataformes, incloent-hi però sense limitar en el Linux, Windows, Mac OS X, *BSD, etc.

+

L'Okular és un visualitzador universal de documents desenvolupat pel KDE. L'Okular funciona en diverses plataformes, incloent-hi però sense limitar en el Linux, Windows, Mac OS X, *BSD, etc.

+

Okular ist ein universeller Dokumentenbetrachter, der von KDE entwickelt wird. Okular ist auf verschiedenen Plattformen verfügbar, darunter auch Linux, Windows, Mac OS X, *BSD usw.

+

Το Okular είναι ένας καθολικός προβολέας εγγράφων που αναπτύχθηκε από το KDE. Το Okular λειτουργεί σε πολλές πλατφόρμες, όπως σε Linux, Windows, Mac OS X, *BSD, κλπ.

+

Okular is a universal document viewer developed by KDE. Okular works on multiple platforms, including but not limited to Linux, Windows, Mac OS X, *BSD, etc.

+

Okular es un visor universal de documentos desarrollado por KDE. Okular funciona en diversas plataformas, incluidas Linux, Windows, Mac OS X, *BSD, etc.

+

Okular on KDE välja töötatud universaalne dokumentide näitaja. Okular võib töötada eri platvormidel, kaasa arvatud Linux, Windows, Mac OS X, *BSD jne.

+

Okular on KDE:n kehittämä yleiskäyttöinen asiakirjakatselin. Okular toimii useissa ympäristöissä kuten Linuxissa, Windowsissa, Mac OS X:ssä, *BSD:ssä jne.

+

Okular est un afficheur universel de documents développé par KDE. Okular fonctionne sur de multiples plate-formes, comme Linux, Windows, Mac OS X, etc.

+

Okular é un visor de documentos universal desenvolvido por KDE. Okular funciona en varias plataformas, entre elas Linux, Windows, Mac OS X, *BSD, etc.

+

Okular è un lettore universale di documenti sviluppato da KDE. Okular funziona su varie piattaforme, incluse (ma non solo) Linux, Windows, Mac OS X, *BSD, ecc.

+

Okular는 만능 문서 뷰어입니다. Okular는 리눅스, macOS, Windows, *BSD 등 여러 플랫폼에서 동작합니다.

+

Okular is een universele documentviewer ontwikkeld door KDE. Okular werkt op meerdere platforms, inclusief, maar niet beperkt tot Linux, Windows, Mac OS X, *BSD, etc.

+

Okular er ein dokumentvisar for mange ulike filformat, og er utvikla av KDE. Okular køyrer på fleire plattformer, blant anna Linux, Windows, Mac OS X og *BSD.

+

Okular jest wszechstronną przeglądarką dokumentów opracowaną przez KDE. Okular działa na wielu platformach takich jak Linux, Windows, Mac OS X, *BSD, itp.

+

O Okular é um visualizador universal de documentos desenvolvido pelo KDE. O Okular funciona em diversas plataformas, incluindo mas não se limitando ao Linux, Windows, Mac OS X, *BSD, etc.

+

Okular — универсальная программа просмотра документов от KDE. Okular работает на многих платформах: Linux, Windows, Mac OS X, *BSD и других.

+

Okular je univerzálny prehliadač dokumentov vyvinutý v KDE. Okular beží na mnohých platformách, vrátane Linux, Windows, Mac OS X, *BSD, atď.

+

Okular je univerzalni pregledovalnik dokumentov, ki so ga razvili pri KDE. Dela v več okoljih vključno s sistemi Linux, Windows, Mac OS X in *BSD.

+

Окулар је универзални приказивач докумената, који развија КДЕ. Ради на већем броју платформи, укључујући Линукс, Виндоуз, МекОС X, БСД‑ове, итд.

+

Okular je univerzalni prikazivač dokumenata, koji razvija KDE. Radi na većem broju platformi, uključujući Linux, Windows, MacOS X, BSD‑ove, itd.

+

Окулар је универзални приказивач докумената, који развија КДЕ. Ради на већем броју платформи, укључујући Линукс, Виндоуз, МекОС X, БСД‑ове, итд.

+

Okular je univerzalni prikazivač dokumenata, koji razvija KDE. Radi na većem broju platformi, uključujući Linux, Windows, MacOS X, BSD‑ove, itd.

+

Okular är en universell dokumentvisare utvecklad av KDE. Okular fungerar på flera plattformar, inklusive men inte begränsat till Linux, Windows, Max OS X, *BSD, etc.

+

Okular, KDE tarafından geliştirilmiş evrensel bir belge görüntüleyicidir. Okular, Linux, Windows, Mac OS X, *BSD, vb. dahil ancak bunlarla sınırlı olmayan birden çok platformda çalışır.

+

Okular є універсальною програмою для перегляду документів, розробленою KDE. Okular може працювати на багатьох програмних платформах, зокрема Linux, Windows, Mac OS X, *BSD тощо.

+

xxOkular is a universal document viewer developed by KDE. Okular works on multiple platforms, including but not limited to Linux, Windows, Mac OS X, *BSD, etc.xx

+

Okular 是由 KDE 开发的通用文档查看器。Okular 可在多个平台上运行,包括但不是限于 Linux,Windows,Mac OS X,* BSD,等。

+

Okular 是一個由 KDE 開發的通用文件檢視器。Okular 可以在多種平臺上運作,包含但不限於 Linux, Windows, Mac OS X, *BSD 等等。

+

Features:

+

Carauterístiques:

+

Característiques:

+

Característiques:

+

Vlastnosti:

+

Funktionen:

+

Χαρακτηριστικά:

+

Features:

+

Funciones:

+

Omadused:

+

Ominaisuuksia:

+

Fonctionnalités :

+

Funcionalidades:

+

Characteristicas:

+

Funzionalità:

+

기능:

+

Kenmerken:

+

Funksjonar:

+

Możliwości:

+

Funcionalidades:

+

Возможности:

+

Funkcie:

+

Zmožnosti:

+

Могућности:

+

Mogućnosti:

+

Могућности:

+

Mogućnosti:

+

Funktioner:

+

Özellikler:

+

Можливості:

+

xxFeatures:xx

+

功能:

+

功能:

+
    +
  • Supported Formats: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Formatos sofitaos: PDF, PS, Tiff, CHM, DjVU, imáxenes, DVI, XPS, ODT, FictionBook, cómics, Pluker, Epub y Fax
  • +
  • Formats acceptats: PDF, PS, Tiff, CHM, DjVu, imatges, DVI, XPS, ODT, Fiction Book, llibres de còmic, Plucker, EPub, Fax
  • +
  • Formats acceptats: PDF, PS, Tiff, CHM, DjVu, imatges, DVI, XPS, ODT, Fiction Book, llibres de còmic, Plucker, EPub, Fax
  • +
  • Podporované formáty: PDF, PS, Tiff, CHM, DjVu, obrázky, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Unterstützte Formate: PDF, PS, Tiff, CHM, DjVu, Bilder, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Υποστηριζόμενοι τύποι αποθήκευσης: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Supported Formats: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Formatos permitidos: PDF, PS, Tiff, CHM, DjVu, imágenes, DVI, XPS, ODT, Fiction Book, libros de cómics, Plucker, EPub, Fax
  • +
  • Toetatud vormingud: PDF, PS, Tiff, CHM, DjVu, pildid, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, faks
  • +
  • Tuetut tiedostomuodot: PDF, PS, TIFF, CHM, DjVu, kuvatiedostot, DVI, XPS, ODT, FictionBook, sarjakuvakirjat, Plucker, EPub, faksit
  • +
  • Formats de fichiers gérés : PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Formatos compatíbeis: PDF, PS, Tiff, CHM, DjVu, imaxes, DVI, XPS, ODT, FictionBook, banda deseñada, Plucker, EPub e fax.
  • +
  • Formati supportati: PDF, PS, Tiff, CHM, DjVu, immagini, DVI, XPS, ODT, Fiction Book, fumetti, Plucker, EPub, Fax
  • +
  • 지원하는 형식: PDF, PS, Tiff, CHM, DjVu, 사진, DVI, XPS, ODT, Fiction Book, 만화책, Plucker, EPub, 팩스
  • +
  • Ondersteunde formaten: PDF, PS, Tiff, CHM, DjVu, Afbeeldingen, DVI, XPS, ODT, Fictie boek, Stripboek, Plucker, EPub, Fax
  • +
  • Støtta format: PDF, PS, Tiff, CHM, DjVu, bilete, DVI, XPS, ODT, e-bøker, teikneseriar, Plucker, EPub, Fax
  • +
  • Obsługa formatów: PDF, PS, Tiff, CHM, DjVu, Obrazy, DVI, XPS, ODT, Fikcja, Komiksy, Plucker, EPub, Fax
  • +
  • Formatos Suportados: PDF, PS, Tiff, CHM, DjVu, Imagens, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Поддержка форматов PDF, PS, Tiff, CHM, DjVu, изображений, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, факсов;
  • +
  • Podporované formáty: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Podprte vrste: PDF, PS, Tiff, CHM, DjVu, slike, DVI, XPS, ODT, Fiction Book, stripi, Plucker, EPub, faks
  • +
  • Подржани формати: ПДФ, постскрипт, ТИФФ, ЦХМ, ДјВу, слике, ДВИ, ИксПС, ОДТ, фикшнбук, стрипови, Плакер, ЕПУБ, факс.
  • +
  • Podržani formati: PDF, PostScript, TIFF, CHM, DjVu, slike, DVI, XPS, ODT, FictionBook, stripovi, Plucker, EPUB, faks.
  • +
  • Подржани формати: ПДФ, постскрипт, ТИФФ, ЦХМ, ДјВу, слике, ДВИ, ИксПС, ОДТ, фикшнбук, стрипови, Плакер, ЕПУБ, факс.
  • +
  • Podržani formati: PDF, PostScript, TIFF, CHM, DjVu, slike, DVI, XPS, ODT, FictionBook, stripovi, Plucker, EPUB, faks.
  • +
  • Format som stöds: PDF, PS, Tiff, CHM, DjVu, bilder, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Desteklenen Biçimler: PDF, PS, Tiff, CHM, DjVu, Resimler, DVI, XPS, ODT, Kurgu Kitabı, Çizgi Roman Kitabı, Plucker, EPub, Faks
  • +
  • Підтримувані формати: PDF, PS, Tiff, CHM, DjVu, зображення, DVI, XPS, ODT, Fiction Book, комікси, Plucker, EPub, факси.
  • +
  • xxSupported Formats: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Faxxx
  • +
  • 支持的格式︰ PDF,PS,Tiff,CHM,DjVu,图片,DVI,XPS,ODT,FictionBook,漫画书,Plucker,EPub,传真
  • +
  • 支援的檔案格式:PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • +
  • Sidebar with contents, thumbnails, reviews and bookmarks
  • +
  • Barra llateral colos conteníos, miniatures, reseñes y marcadores
  • +
  • Barra lateral amb el contingut, miniatures, revisions i punts
  • +
  • Barra lateral amb el contingut, miniatures, revisions i punts
  • +
  • Seitenleiste mit Inhalten, Vorschauen und Lesezeichen
  • +
  • Πλευρική γραμμή με περιεχόμενα, εικόνες προεπισκόπησης, αναλύσεις και σελιδοδείκτες
  • +
  • Sidebar with contents, thumbnails, reviews and bookmarks
  • +
  • Barra lateral con contenido, miniaturas, revisiones y marcadores
  • +
  • Külgriba sisukorra, pisipiltide, annotatsioonide ja järjehoidjatega
  • +
  • Sivupaneeli, jossa sisältö, pienoiskuvat, tarkastelut ja kirjanmerkit
  • +
  • Barre latérale montrant les contenus, miniatures, informations de relecture et signets
  • +
  • Barra lateral con contido, miniaturas, revisións e marcadores.
  • +
  • Barra laterale con contenuti, miniature, revisioni e segnalibri
  • +
  • 목차, 책갈피, 미리 보기, 주석이 있는 사이드바
  • +
  • Zijbalk met inhoud, miniaturen, reviews en bladwijzers
  • +
  • Sidestolpe med innhaldsliste, miniatyrbilete, omtalar og bokmerke
  • +
  • Pasek boczny z treścią, miniaturami, recenzją i zakładkami
  • +
  • Barra lateral com o conteúdo, miniaturas, revisões e marcação de favoritos
  • +
  • Боковая панель с содержанием, миниатюрами страниц, комментариями и закладками;
  • +
  • Posuvník s obsahom, miniatúrami, revíziami a záložkami
  • +
  • Stranska vrstica z vsebino, sličicami, ocenami in zaznamki
  • +
  • Бочна трака са садржајем, сличицама, рецензијама и обележивачима.
  • +
  • Bočna traka sa sadržajem, sličicama, recenzijama i obeleživačima.
  • +
  • Бочна трака са садржајем, сличицама, рецензијама и обележивачима.
  • +
  • Bočna traka sa sadržajem, sličicama, recenzijama i obeleživačima.
  • +
  • Sidorad med innehåll, miniatyrbilder, granskningar och bokmärken
  • +
  • İçindekiler, küçük resimler, incelemeler ve yer imleri bulunan kenar çubuğu
  • +
  • Бічні панелі зі списками змісту, мініатюрами сторінок, можливість рецензування та додавання закладок.
  • +
  • xxSidebar with contents, thumbnails, reviews and bookmarksxx
  • +
  • 目录,缩略图,批注和书签侧边栏
  • +
  • 有內容、縮圖、回顧與書籤等選項的側邊欄
  • +
  • Annotations support
  • +
  • Sofitu d'anotaciones
  • +
  • Admet anotacions
  • +
  • Admet anotacions
  • +
  • Unterstützung für Anmerkungen
  • +
  • Υποστήριξη σημειώσεων
  • +
  • Annotations support
  • +
  • Permite el uso de notas
  • +
  • Annotatsioonide toetus
  • +
  • Merkintöjen tuki
  • +
  • Gestion des annotations
  • +
  • Funcionalidade de anotacións.
  • +
  • Supporto per le annotazioni
  • +
  • 주석 지원
  • +
  • Ondersteuning van annotaties
  • +
  • Støtte for merknadar
  • +
  • Obsługa przypisów
  • +
  • Suporte para anotações
  • +
  • Поддержка комментариев.
  • +
  • Podpora anotácií
  • +
  • Podpora zabeležkam
  • +
  • Подршка за тумачења.
  • +
  • Podrška za tumačenja.
  • +
  • Подршка за тумачења.
  • +
  • Podrška za tumačenja.
  • +
  • Stöd för kommentarer
  • +
  • Ek açıklamalar desteği
  • +
  • Підтримка анотування.
  • +
  • xxAnnotations supportxx
  • +
  • 支持批注
  • +
  • 支援註記
  • +
+
+ + + https://www.kde.org/images/screenshots/okular.png + + + https://okular.kde.org/ + https://bugs.kde.org/enter_bug.cgi?format=guided&product=okular + KDE + + okularkirigami + +