├── MuPDFDemo
├── .gitignore
├── .idea
│ ├── compiler.xml
│ ├── copyright
│ │ └── profiles_settings.xml
│ ├── gradle.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── runConfigurations.xml
├── app
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── successive
│ │ │ └── mupdfdemo
│ │ │ └── ExampleInstrumentedTest.java
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── successive
│ │ │ │ └── mupdfdemo
│ │ │ │ └── MainActivity.java
│ │ └── res
│ │ │ ├── layout
│ │ │ └── activity_main.xml
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ └── values
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── successive
│ │ └── mupdfdemo
│ │ └── ExampleUnitTest.java
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── mupdf-android-master
│ ├── .gitignore
│ ├── COPYING
│ ├── LICENSE
│ ├── README.md
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── artifex
│ │ │ └── viafirma
│ │ │ └── mupdf
│ │ │ └── ApplicationTest.java
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── artifex
│ │ │ ├── mupdfdemo
│ │ │ ├── Annotation.java
│ │ │ ├── ArrayDeque.java
│ │ │ ├── AsyncTask.java
│ │ │ ├── CancellableAsyncTask.java
│ │ │ ├── CancellableTaskDefinition.java
│ │ │ ├── ChoosePDFActivity.java
│ │ │ ├── ChoosePDFAdapter.java
│ │ │ ├── ChoosePDFItem.java
│ │ │ ├── Deque.java
│ │ │ ├── FilePicker.java
│ │ │ ├── LinkInfo.java
│ │ │ ├── LinkInfoExternal.java
│ │ │ ├── LinkInfoInternal.java
│ │ │ ├── LinkInfoRemote.java
│ │ │ ├── LinkInfoVisitor.java
│ │ │ ├── MuPDFActivity.java
│ │ │ ├── MuPDFAlert.java
│ │ │ ├── MuPDFAlertInternal.java
│ │ │ ├── MuPDFCancellableTaskDefinition.java
│ │ │ ├── MuPDFCore.java
│ │ │ ├── MuPDFFragment.java
│ │ │ ├── MuPDFPageAdapter.java
│ │ │ ├── MuPDFPageView.java
│ │ │ ├── MuPDFReaderView.java
│ │ │ ├── MuPDFReflowAdapter.java
│ │ │ ├── MuPDFReflowView.java
│ │ │ ├── MuPDFView.java
│ │ │ ├── OutlineActivity.java
│ │ │ ├── OutlineActivityData.java
│ │ │ ├── OutlineAdapter.java
│ │ │ ├── OutlineItem.java
│ │ │ ├── PageView.java
│ │ │ ├── PrintDialogActivity.java
│ │ │ ├── ReaderView.java
│ │ │ ├── SafeAnimatorInflater.java
│ │ │ ├── SearchTask.java
│ │ │ ├── SearchTaskResult.java
│ │ │ ├── Stepper.java
│ │ │ ├── TextChar.java
│ │ │ ├── TextWord.java
│ │ │ └── WidgetType.java
│ │ │ └── utils
│ │ │ ├── DigitalizedEventCallback.java
│ │ │ └── PdfBitmap.java
│ │ ├── jniLibs
│ │ ├── armeabi-v7a
│ │ │ └── libmupdf.so
│ │ └── armeabi
│ │ │ └── libmupdf.so
│ │ └── res
│ │ ├── animator
│ │ └── info.xml
│ │ ├── drawable-hdpi
│ │ └── icon.png
│ │ ├── drawable-ldpi
│ │ ├── ic_annot.png
│ │ ├── ic_annotation.png
│ │ ├── ic_arrow_left.png
│ │ ├── ic_arrow_right.png
│ │ ├── ic_cancel.png
│ │ ├── ic_check.png
│ │ ├── ic_clipboard.png
│ │ ├── ic_dir.png
│ │ ├── ic_doc.png
│ │ ├── ic_highlight.png
│ │ ├── ic_link.png
│ │ ├── ic_list.png
│ │ ├── ic_magnifying_glass.png
│ │ ├── ic_more.png
│ │ ├── ic_pen.png
│ │ ├── ic_print.png
│ │ ├── ic_reflow.png
│ │ ├── ic_select.png
│ │ ├── ic_share.png
│ │ ├── ic_strike.png
│ │ ├── ic_trash.png
│ │ ├── ic_underline.png
│ │ ├── ic_updir.png
│ │ └── icon.png
│ │ ├── drawable-mdpi
│ │ ├── ic_annot.png
│ │ ├── ic_annotation.png
│ │ ├── ic_arrow_left.png
│ │ ├── ic_arrow_right.png
│ │ ├── ic_arrow_up.png
│ │ ├── ic_cancel.png
│ │ ├── ic_check.png
│ │ ├── ic_clipboard.png
│ │ ├── ic_dir.png
│ │ ├── ic_doc.png
│ │ ├── ic_highlight.png
│ │ ├── ic_link.png
│ │ ├── ic_list.png
│ │ ├── ic_magnifying_glass.png
│ │ ├── ic_more.png
│ │ ├── ic_pen.png
│ │ ├── ic_print.png
│ │ ├── ic_reflow.png
│ │ ├── ic_select.png
│ │ ├── ic_share.png
│ │ ├── ic_strike.png
│ │ ├── ic_trash.png
│ │ ├── ic_underline.png
│ │ └── icon.png
│ │ ├── drawable-xhdpi
│ │ └── icon.png
│ │ ├── drawable
│ │ ├── busy.xml
│ │ ├── button.xml
│ │ ├── darkdenim3.png
│ │ ├── page_num.xml
│ │ ├── search.xml
│ │ ├── seek_progress.xml
│ │ ├── seek_thumb.xml
│ │ └── tiled_background.xml
│ │ ├── layout
│ │ ├── buttons.xml
│ │ ├── main.xml
│ │ ├── outline_entry.xml
│ │ ├── picker_entry.xml
│ │ ├── print_dialog.xml
│ │ └── textentry.xml
│ │ ├── values-ar
│ │ └── strings.xml
│ │ ├── values-ca
│ │ └── strings.xml
│ │ ├── values-cs
│ │ └── strings.xml
│ │ ├── values-da
│ │ └── strings.xml
│ │ ├── values-de
│ │ └── strings.xml
│ │ ├── values-el
│ │ └── strings.xml
│ │ ├── values-es
│ │ └── strings.xml
│ │ ├── values-et
│ │ └── strings.xml
│ │ ├── values-fi
│ │ └── strings.xml
│ │ ├── values-fr
│ │ └── strings.xml
│ │ ├── values-hi
│ │ └── strings.xml
│ │ ├── values-hu
│ │ └── strings.xml
│ │ ├── values-in
│ │ └── strings.xml
│ │ ├── values-it
│ │ └── strings.xml
│ │ ├── values-iw
│ │ └── strings.xml
│ │ ├── values-ja
│ │ └── strings.xml
│ │ ├── values-ko
│ │ └── strings.xml
│ │ ├── values-lt
│ │ └── strings.xml
│ │ ├── values-ms
│ │ └── strings.xml
│ │ ├── values-nl
│ │ └── strings.xml
│ │ ├── values-no
│ │ └── strings.xml
│ │ ├── values-pl
│ │ └── strings.xml
│ │ ├── values-pt
│ │ └── strings.xml
│ │ ├── values-ru
│ │ └── strings.xml
│ │ ├── values-sk
│ │ └── strings.xml
│ │ ├── values-sv
│ │ └── strings.xml
│ │ ├── values-th
│ │ └── strings.xml
│ │ ├── values-tl
│ │ └── strings.xml
│ │ ├── values-tr
│ │ └── strings.xml
│ │ ├── values-zh-rTW
│ │ └── strings.xml
│ │ ├── values-zh
│ │ └── strings.xml
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
└── settings.gradle
└── README.md
/MuPDFDemo/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 | .externalNativeBuild
10 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
18 |
19 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/MuPDFDemo/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 26
5 | buildToolsVersion "26.0.1"
6 | defaultConfig {
7 | applicationId "com.successive.mupdfdemo"
8 | minSdkVersion 15
9 | targetSdkVersion 26
10 | versionCode 1
11 | versionName "1.0"
12 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(include: ['*.jar'], dir: 'libs')
24 | androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
25 | exclude group: 'com.android.support', module: 'support-annotations'
26 | })
27 | compile 'com.android.support:appcompat-v7:26.+'
28 | compile 'com.android.support.constraint:constraint-layout:1.0.2'
29 | testCompile 'junit:junit:4.12'
30 | compile project(':mupdf-android-master')
31 | }
32 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /home/jubin/Android/Sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
19 | # Uncomment this to preserve the line number information for
20 | # debugging stack traces.
21 | #-keepattributes SourceFile,LineNumberTable
22 |
23 | # If you keep the line number information, uncomment this to
24 | # hide the original source file name.
25 | #-renamesourcefileattribute SourceFile
26 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/androidTest/java/com/successive/mupdfdemo/ExampleInstrumentedTest.java:
--------------------------------------------------------------------------------
1 | package com.successive.mupdfdemo;
2 |
3 | import android.content.Context;
4 | import android.support.test.InstrumentationRegistry;
5 | import android.support.test.runner.AndroidJUnit4;
6 |
7 | import org.junit.Test;
8 | import org.junit.runner.RunWith;
9 |
10 | import static org.junit.Assert.*;
11 |
12 | /**
13 | * Instrumentation test, which will execute on an Android device.
14 | *
15 | * @see Testing documentation
16 | */
17 | @RunWith(AndroidJUnit4.class)
18 | public class ExampleInstrumentedTest {
19 | @Test
20 | public void useAppContext() throws Exception {
21 | // Context of the app under test.
22 | Context appContext = InstrumentationRegistry.getTargetContext();
23 |
24 | assertEquals("com.successive.mupdfdemo", appContext.getPackageName());
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/java/com/successive/mupdfdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.successive.mupdfdemo;
2 |
3 | import android.Manifest;
4 | import android.content.Intent;
5 | import android.content.pm.PackageManager;
6 | import android.database.Cursor;
7 | import android.graphics.Color;
8 | import android.net.Uri;
9 | import android.os.Bundle;
10 | import android.support.v4.app.ActivityCompat;
11 | import android.support.v4.content.ContextCompat;
12 | import android.support.v7.app.AppCompatActivity;
13 | import android.support.v7.widget.AppCompatButton;
14 | import android.support.v7.widget.Toolbar;
15 | import android.util.Log;
16 | import android.view.View;
17 | import android.widget.RelativeLayout;
18 | import android.widget.TextView;
19 |
20 | import com.artifex.mupdfdemo.MuPDFCore;
21 | import com.artifex.mupdfdemo.MuPDFPageAdapter;
22 | import com.artifex.mupdfdemo.MuPDFReaderView;
23 |
24 | import java.io.InputStream;
25 |
26 | public class MainActivity extends AppCompatActivity {
27 | private static final int REQUEST_EXTERNAL_STORAGE = 0;
28 | private AppCompatButton openFileManagerBtn;
29 | private Toolbar toolbar;
30 | private RelativeLayout pdfViewRL;
31 | private TextView title, msgTxt;
32 |
33 | @Override
34 | protected void onCreate(Bundle savedInstanceState) {
35 | super.onCreate(savedInstanceState);
36 | setContentView(R.layout.activity_main);
37 | //Marshmallow Runtime Permissions
38 | loadPermissions(Manifest.permission.WRITE_EXTERNAL_STORAGE, REQUEST_EXTERNAL_STORAGE);
39 | openFileManagerBtn = (AppCompatButton) findViewById(R.id.open_btn);
40 | toolbar = (Toolbar) findViewById(R.id.toolbar);
41 | title = (TextView) findViewById(R.id.title);
42 | msgTxt = (TextView) findViewById(R.id.msgTxt);
43 | title.setVisibility(View.GONE);
44 | pdfViewRL = (RelativeLayout) findViewById(R.id.pdfViewRL);
45 | setSupportActionBar(toolbar);
46 | toolbar.setTitleTextColor(Color.WHITE);
47 | openFileManagerBtn.setOnClickListener(new View.OnClickListener() {
48 | @Override
49 | public void onClick(View view) {
50 | pickFileOnClick(view);
51 | }
52 | });
53 | }
54 |
55 | private void displayPDF(String path) throws Exception {
56 |
57 | /*Reading file from URI*/
58 | byte buffer[] = null;
59 | Uri uri = Uri.parse(path);
60 | try {
61 | InputStream is = getContentResolver().openInputStream(uri);
62 | int len = is.available();
63 | buffer = new byte[len];
64 | is.read(buffer, 0, len);
65 | is.close();
66 | } catch (OutOfMemoryError e) {
67 | System.out.println("Out of memory during buffer reading");
68 | } catch (Exception e) {
69 | System.out.println("Exception reading from stream: " + e);
70 | try {
71 | Cursor cursor = getContentResolver().query(uri, new String[]{"_data"}, null, null, null);
72 | if (cursor.moveToFirst()) {
73 | String str = cursor.getString(0);
74 | if (str == null) {
75 | } else {
76 | uri = Uri.parse(str);
77 | }
78 | }
79 | } catch (Exception e2) {
80 | System.out.println("Exception in Transformer Prime file manager code: " + e2);
81 | }
82 | }
83 |
84 | MuPDFCore core = new MuPDFCore(getApplicationContext(), buffer, null);
85 | MuPDFReaderView mDocView = new MuPDFReaderView(getApplicationContext());
86 | mDocView.setAdapter(new MuPDFPageAdapter(getApplicationContext(), null, core));
87 | pdfViewRL.addView(mDocView, new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
88 |
89 |
90 | /*Use this if you want to open PDF outside app using MuPDF's own Activity*/
91 |
92 | /*Intent intent = new Intent(getApplicationContext(), MuPDFActivity.class);
93 | intent.setAction(Intent.ACTION_VIEW);
94 | intent.setData(Uri.parse(path));
95 | startActivity(intent);*/
96 |
97 |
98 | }
99 |
100 | @Override
101 | public void onActivityResult(int reqCode, int result, Intent intent) {
102 | if (reqCode == 1) {
103 | if (result == RESULT_OK) {
104 | Uri data = intent.getData();
105 | Log.i("Main", "File path: " + data.getPath());
106 | Log.i("Main", "File name: " + data.getLastPathSegment());
107 | if (data.getLastPathSegment() != null) {
108 | title.setVisibility(View.VISIBLE);
109 | title.setText(data.getLastPathSegment());
110 | msgTxt.setVisibility(View.GONE);
111 | }
112 | try {
113 |
114 |
115 | displayPDF(data.toString());
116 | } catch (Exception e) {
117 | e.printStackTrace();
118 | }
119 | }
120 | }
121 | }
122 |
123 | public void pickFileOnClick(View v) {
124 | //Method to open pdf files
125 | Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
126 | intent.setType("application/pdf");
127 | startActivityForResult(intent, 1);
128 | }
129 |
130 | private void loadPermissions(String perm, int requestCode) {
131 | if (ContextCompat.checkSelfPermission(this, perm) != PackageManager.PERMISSION_GRANTED) {
132 | if (!ActivityCompat.shouldShowRequestPermissionRationale(this, perm)) {
133 | ActivityCompat.requestPermissions(this, new String[]{perm}, requestCode);
134 | }
135 | }
136 | }
137 |
138 | // Code Added
139 | @Override
140 | public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
141 | switch (requestCode) {
142 | case REQUEST_EXTERNAL_STORAGE: {
143 | // If request is cancelled, the result arrays are empty.
144 | if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
145 | Log.v("STATUS", "Permission Granted!");
146 |
147 | } else {
148 | // not granted
149 |
150 | }
151 | return;
152 | }
153 |
154 | }
155 | }
156 | }
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
14 |
24 |
25 |
30 |
31 |
41 |
42 |
49 |
50 |
51 |
52 |
53 |
62 |
63 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #3F51B5
4 | #303F9F
5 | #FF4081
6 |
7 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | MuPDF Demo
3 |
4 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/MuPDFDemo/app/src/test/java/com/successive/mupdfdemo/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package com.successive.mupdfdemo;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.*;
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * @see Testing documentation
11 | */
12 | public class ExampleUnitTest {
13 | @Test
14 | public void addition_isCorrect() throws Exception {
15 | assertEquals(4, 2 + 2);
16 | }
17 | }
--------------------------------------------------------------------------------
/MuPDFDemo/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:2.3.3'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
21 | task clean(type: Delete) {
22 | delete rootProject.buildDir
23 | }
24 |
--------------------------------------------------------------------------------
/MuPDFDemo/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | org.gradle.jvmargs=-Xmx1536m
13 |
14 | # When configured, Gradle will run in incubating parallel mode.
15 | # This option should only be used with decoupled projects. More details, visit
16 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
17 | # org.gradle.parallel=true
18 |
--------------------------------------------------------------------------------
/MuPDFDemo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/MuPDFDemo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Sep 01 09:22:29 IST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
7 |
--------------------------------------------------------------------------------
/MuPDFDemo/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
10 | DEFAULT_JVM_OPTS=""
11 |
12 | APP_NAME="Gradle"
13 | APP_BASE_NAME=`basename "$0"`
14 |
15 | # Use the maximum available, or set MAX_FD != -1 to use that value.
16 | MAX_FD="maximum"
17 |
18 | warn ( ) {
19 | echo "$*"
20 | }
21 |
22 | die ( ) {
23 | echo
24 | echo "$*"
25 | echo
26 | exit 1
27 | }
28 |
29 | # OS specific support (must be 'true' or 'false').
30 | cygwin=false
31 | msys=false
32 | darwin=false
33 | case "`uname`" in
34 | CYGWIN* )
35 | cygwin=true
36 | ;;
37 | Darwin* )
38 | darwin=true
39 | ;;
40 | MINGW* )
41 | msys=true
42 | ;;
43 | esac
44 |
45 | # Attempt to set APP_HOME
46 | # Resolve links: $0 may be a link
47 | PRG="$0"
48 | # Need this for relative symlinks.
49 | while [ -h "$PRG" ] ; do
50 | ls=`ls -ld "$PRG"`
51 | link=`expr "$ls" : '.*-> \(.*\)$'`
52 | if expr "$link" : '/.*' > /dev/null; then
53 | PRG="$link"
54 | else
55 | PRG=`dirname "$PRG"`"/$link"
56 | fi
57 | done
58 | SAVED="`pwd`"
59 | cd "`dirname \"$PRG\"`/" >/dev/null
60 | APP_HOME="`pwd -P`"
61 | cd "$SAVED" >/dev/null
62 |
63 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
64 |
65 | # Determine the Java command to use to start the JVM.
66 | if [ -n "$JAVA_HOME" ] ; then
67 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
68 | # IBM's JDK on AIX uses strange locations for the executables
69 | JAVACMD="$JAVA_HOME/jre/sh/java"
70 | else
71 | JAVACMD="$JAVA_HOME/bin/java"
72 | fi
73 | if [ ! -x "$JAVACMD" ] ; then
74 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
75 |
76 | Please set the JAVA_HOME variable in your environment to match the
77 | location of your Java installation."
78 | fi
79 | else
80 | JAVACMD="java"
81 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
82 |
83 | Please set the JAVA_HOME variable in your environment to match the
84 | location of your Java installation."
85 | fi
86 |
87 | # Increase the maximum file descriptors if we can.
88 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
89 | MAX_FD_LIMIT=`ulimit -H -n`
90 | if [ $? -eq 0 ] ; then
91 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
92 | MAX_FD="$MAX_FD_LIMIT"
93 | fi
94 | ulimit -n $MAX_FD
95 | if [ $? -ne 0 ] ; then
96 | warn "Could not set maximum file descriptor limit: $MAX_FD"
97 | fi
98 | else
99 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
100 | fi
101 | fi
102 |
103 | # For Darwin, add options to specify how the application appears in the dock
104 | if $darwin; then
105 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
106 | fi
107 |
108 | # For Cygwin, switch paths to Windows format before running java
109 | if $cygwin ; then
110 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
111 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
112 | JAVACMD=`cygpath --unix "$JAVACMD"`
113 |
114 | # We build the pattern for arguments to be converted via cygpath
115 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
116 | SEP=""
117 | for dir in $ROOTDIRSRAW ; do
118 | ROOTDIRS="$ROOTDIRS$SEP$dir"
119 | SEP="|"
120 | done
121 | OURCYGPATTERN="(^($ROOTDIRS))"
122 | # Add a user-defined pattern to the cygpath arguments
123 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
124 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
125 | fi
126 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
127 | i=0
128 | for arg in "$@" ; do
129 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
130 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
131 |
132 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
133 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
134 | else
135 | eval `echo args$i`="\"$arg\""
136 | fi
137 | i=$((i+1))
138 | done
139 | case $i in
140 | (0) set -- ;;
141 | (1) set -- "$args0" ;;
142 | (2) set -- "$args0" "$args1" ;;
143 | (3) set -- "$args0" "$args1" "$args2" ;;
144 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
145 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
146 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
147 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
148 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
149 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
150 | esac
151 | fi
152 |
153 | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
154 | function splitJvmOpts() {
155 | JVM_OPTS=("$@")
156 | }
157 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
158 | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
159 |
160 | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
161 |
--------------------------------------------------------------------------------
/MuPDFDemo/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
12 | set DEFAULT_JVM_OPTS=
13 |
14 | set DIRNAME=%~dp0
15 | if "%DIRNAME%" == "" set DIRNAME=.
16 | set APP_BASE_NAME=%~n0
17 | set APP_HOME=%DIRNAME%
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windowz variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 | if "%@eval[2+2]" == "4" goto 4NT_args
53 |
54 | :win9xME_args
55 | @rem Slurp the command line arguments.
56 | set CMD_LINE_ARGS=
57 | set _SKIP=2
58 |
59 | :win9xME_args_slurp
60 | if "x%~1" == "x" goto execute
61 |
62 | set CMD_LINE_ARGS=%*
63 | goto execute
64 |
65 | :4NT_args
66 | @rem Get arguments from the 4NT Shell from JP Software
67 | set CMD_LINE_ARGS=%$
68 |
69 | :execute
70 | @rem Setup the command line
71 |
72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if "%ERRORLEVEL%"=="0" goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
85 | exit /b 1
86 |
87 | :mainEnd
88 | if "%OS%"=="Windows_NT" endlocal
89 |
90 | :omega
91 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | /.idea/libraries
5 | .DS_Store
6 | /build
7 | /*.iml
8 | *.iml
9 | /gradle.properties
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/README.md:
--------------------------------------------------------------------------------
1 | # MuPDF for Android
2 |
3 | ## Introduction
4 | This project is intended to offer an easy integration of MuPDF library (http://www.mupdf.com) on Android, avoiding the building process and adapted to the last version of Android Studio and Gradle as of February 2015 (commit 262a4717a9997c89cac275d24ce6d605ca06284f from http://git.ghostscript.com/mupdf.git)
5 |
6 | We also added some features:
7 |
8 | * You can add custom Bitmaps to each page.
9 | * You can use the MuPDFActivity as a Fragment (MuPDFFragment), that allows you to include it in your own activity as any other layout.
10 | * You can add an interface listener to the page of the pdf, so you can listen when the user taps, double taps or long press any coordinate of the pdf.
11 |
12 | This version is still on development.
13 |
14 | ## Installation guide
15 |
16 | 1. Make sure you have installed the newest NDK from https://developer.android.com/tools/sdk/ndk/index.html#Installing (version 9+ required)
17 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/build.gradle:
--------------------------------------------------------------------------------
1 | repositories {
2 | mavenCentral()
3 | jcenter()
4 | maven { url 'http://repo1.maven.org/maven2' }
5 | }
6 |
7 | buildscript {
8 | repositories {
9 | mavenCentral()
10 | jcenter()
11 | }
12 | dependencies {
13 | classpath 'com.android.tools.build:gradle:2.3.1'
14 | }
15 | }
16 |
17 | apply plugin: 'com.android.library'
18 | apply plugin: 'maven'
19 |
20 | def muPdfversionCode = 19
21 | def muPdfversionName = '1.2.19'
22 |
23 | android {
24 | compileSdkVersion 21
25 | buildToolsVersion '25.0.0'
26 |
27 | lintOptions {
28 | abortOnError false
29 | }
30 | defaultConfig {
31 | minSdkVersion 15
32 | targetSdkVersion 21
33 | versionCode muPdfversionCode
34 | versionName muPdfversionName
35 | }
36 | buildTypes {
37 | release {
38 | minifyEnabled false
39 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
40 | }
41 | }
42 | }
43 |
44 | configurations {
45 | deployerJars
46 | }
47 |
48 | dependencies {
49 | deployerJars 'org.apache.maven.wagon:wagon-http:2.2'
50 | compile fileTree(dir: 'libs', include: ['*.jar'])
51 | compile 'com.android.support:appcompat-v7:21.0.3'
52 | }
53 |
54 | // For Maven Repository submitting : Execute task: UploadArchives. Ex: > gradle uploadArchives
55 | // Define repoUsername, repoPassword and repoUrl on "gradle.properties" file in order to use this task.
56 | /*
57 | uploadArchives {
58 | repositories.mavenDeployer {
59 | configuration = configurations.deployerJars
60 | repository(url: repoUrl) {
61 | authentication(userName: repoUsername, password: repoPassword)
62 | }
63 | pom.version = muPdfversionName
64 | pom.artifactId = "mupdf-android"
65 | pom.groupId = "com.viafirma"
66 | }
67 | }
68 | */
69 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /Applications/android-sdk-macosx/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/androidTest/java/com/artifex/viafirma/mupdf/ApplicationTest.java:
--------------------------------------------------------------------------------
1 | package com.artifex.viafirma.mupdf;
2 |
3 | import android.app.Application;
4 | import android.test.ApplicationTestCase;
5 |
6 | /**
7 | * Testing Fundamentals
8 | */
9 | public class ApplicationTest extends ApplicationTestCase {
10 | public ApplicationTest() {
11 | super(Application.class);
12 | }
13 | }
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
12 |
13 |
14 |
17 |
21 |
22 |
26 |
27 |
31 |
32 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/Annotation.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.RectF;
4 |
5 | public class Annotation extends RectF {
6 | enum Type {
7 | TEXT, LINK, FREETEXT, LINE, SQUARE, CIRCLE, POLYGON, POLYLINE, HIGHLIGHT,
8 | UNDERLINE, SQUIGGLY, STRIKEOUT, STAMP, CARET, INK, POPUP, FILEATTACHMENT,
9 | SOUND, MOVIE, WIDGET, SCREEN, PRINTERMARK, TRAPNET, WATERMARK, A3D, UNKNOWN
10 | }
11 |
12 | public final Type type;
13 |
14 | public Annotation(float x0, float y0, float x1, float y1, int _type) {
15 | super(x0, y0, x1, y1);
16 | type = _type == -1 ? Type.UNKNOWN : Type.values()[_type];
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/CancellableAsyncTask.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import java.util.concurrent.CancellationException;
4 | import java.util.concurrent.ExecutionException;
5 |
6 | // Ideally this would be a subclass of AsyncTask, however the cancel() method is final, and cannot
7 | // be overridden. I felt that having two different, but similar cancel methods was a bad idea.
8 | public class CancellableAsyncTask
9 | {
10 | private final AsyncTask asyncTask;
11 | private final CancellableTaskDefinition ourTask;
12 |
13 | public void onPreExecute()
14 | {
15 |
16 | }
17 |
18 | public void onPostExecute(Result result)
19 | {
20 |
21 | }
22 |
23 | public CancellableAsyncTask(final CancellableTaskDefinition task)
24 | {
25 | if (task == null)
26 | throw new IllegalArgumentException();
27 |
28 | this.ourTask = task;
29 | asyncTask = new AsyncTask()
30 | {
31 | @Override
32 | protected Result doInBackground(Params... params)
33 | {
34 | return task.doInBackground(params);
35 | }
36 |
37 | @Override
38 | protected void onPreExecute()
39 | {
40 | CancellableAsyncTask.this.onPreExecute();
41 | }
42 |
43 | @Override
44 | protected void onPostExecute(Result result)
45 | {
46 | CancellableAsyncTask.this.onPostExecute(result);
47 | task.doCleanup();
48 | }
49 | };
50 | }
51 |
52 | public void cancelAndWait()
53 | {
54 | this.asyncTask.cancel(true);
55 | ourTask.doCancel();
56 |
57 | try
58 | {
59 | this.asyncTask.get();
60 | }
61 | catch (InterruptedException e)
62 | {
63 | }
64 | catch (ExecutionException e)
65 | {
66 | }
67 | catch (CancellationException e)
68 | {
69 | }
70 |
71 | ourTask.doCleanup();
72 | }
73 |
74 | public void execute(Params ... params)
75 | {
76 | asyncTask.execute(params);
77 | }
78 |
79 | }
80 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/CancellableTaskDefinition.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public interface CancellableTaskDefinition
4 | {
5 | public Result doInBackground(Params... params);
6 | public void doCancel();
7 | public void doCleanup();
8 | }
9 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/ChoosePDFAdapter.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import java.util.LinkedList;
4 |
5 | import android.graphics.Color;
6 | import android.view.LayoutInflater;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 | import android.widget.BaseAdapter;
10 | import android.widget.ImageView;
11 | import android.widget.TextView;
12 |
13 | public class ChoosePDFAdapter extends BaseAdapter {
14 | private final LinkedList mItems;
15 | private final LayoutInflater mInflater;
16 |
17 | public ChoosePDFAdapter(LayoutInflater inflater) {
18 | mInflater = inflater;
19 | mItems = new LinkedList();
20 | }
21 |
22 | public void clear() {
23 | mItems.clear();
24 | }
25 |
26 | public void add(ChoosePDFItem item) {
27 | mItems.add(item);
28 | notifyDataSetChanged();
29 | }
30 |
31 | public int getCount() {
32 | return mItems.size();
33 | }
34 |
35 | public Object getItem(int i) {
36 | return null;
37 | }
38 |
39 | public long getItemId(int arg0) {
40 | return 0;
41 | }
42 |
43 | private int iconForType(ChoosePDFItem.Type type) {
44 | switch (type) {
45 | case PARENT: return R.drawable.ic_arrow_up;
46 | case DIR: return R.drawable.ic_dir;
47 | case DOC: return R.drawable.ic_doc;
48 | default: return 0;
49 | }
50 | }
51 |
52 | public View getView(int position, View convertView, ViewGroup parent) {
53 | View v;
54 | if (convertView == null) {
55 | v = mInflater.inflate(R.layout.picker_entry, null);
56 | } else {
57 | v = convertView;
58 | }
59 | ChoosePDFItem item = mItems.get(position);
60 | ((TextView)v.findViewById(R.id.name)).setText(item.name);
61 | ((ImageView)v.findViewById(R.id.icon)).setImageResource(iconForType(item.type));
62 | ((ImageView)v.findViewById(R.id.icon)).setColorFilter(Color.argb(255, 0, 0, 0));
63 | return v;
64 | }
65 |
66 | }
67 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/ChoosePDFItem.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class ChoosePDFItem {
4 | enum Type {
5 | PARENT, DIR, DOC
6 | }
7 |
8 | final public Type type;
9 | final public String name;
10 |
11 | public ChoosePDFItem (Type t, String n) {
12 | type = t;
13 | name = n;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/FilePicker.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.net.Uri;
4 |
5 | public abstract class FilePicker {
6 | public interface FilePickerSupport {
7 | void performPickFor(FilePicker picker);
8 | }
9 |
10 | private final FilePickerSupport support;
11 |
12 | FilePicker(FilePickerSupport _support) {
13 | support = _support;
14 | }
15 |
16 | void pick() {
17 | support.performPickFor(this);
18 | }
19 |
20 | abstract void onPick(Uri uri);
21 | }
22 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/LinkInfo.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.RectF;
4 |
5 | public class LinkInfo {
6 | final public RectF rect;
7 |
8 | public LinkInfo(float l, float t, float r, float b) {
9 | rect = new RectF(l, t, r, b);
10 | }
11 |
12 | public void acceptVisitor(LinkInfoVisitor visitor) {
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/LinkInfoExternal.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class LinkInfoExternal extends LinkInfo {
4 | final public String url;
5 |
6 | public LinkInfoExternal(float l, float t, float r, float b, String u) {
7 | super(l, t, r, b);
8 | url = u;
9 | }
10 |
11 | public void acceptVisitor(LinkInfoVisitor visitor) {
12 | visitor.visitExternal(this);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/LinkInfoInternal.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class LinkInfoInternal extends LinkInfo {
4 | final public int pageNumber;
5 |
6 | public LinkInfoInternal(float l, float t, float r, float b, int p) {
7 | super(l, t, r, b);
8 | pageNumber = p;
9 | }
10 |
11 | public void acceptVisitor(LinkInfoVisitor visitor) {
12 | visitor.visitInternal(this);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/LinkInfoRemote.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class LinkInfoRemote extends LinkInfo {
4 | final public String fileSpec;
5 | final public int pageNumber;
6 | final public boolean newWindow;
7 |
8 | public LinkInfoRemote(float l, float t, float r, float b, String f, int p, boolean n) {
9 | super(l, t, r, b);
10 | fileSpec = f;
11 | pageNumber = p;
12 | newWindow = n;
13 | }
14 |
15 | public void acceptVisitor(LinkInfoVisitor visitor) {
16 | visitor.visitRemote(this);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/LinkInfoVisitor.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | abstract public class LinkInfoVisitor {
4 | public abstract void visitInternal(LinkInfoInternal li);
5 | public abstract void visitExternal(LinkInfoExternal li);
6 | public abstract void visitRemote(LinkInfoRemote li);
7 | }
8 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFAlert.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class MuPDFAlert {
4 | public enum IconType {Error,Warning,Question,Status};
5 | public enum ButtonPressed {None,Ok,Cancel,No,Yes};
6 | public enum ButtonGroupType {Ok,OkCancel,YesNo,YesNoCancel};
7 |
8 | public final String message;
9 | public final IconType iconType;
10 | public final ButtonGroupType buttonGroupType;
11 | public final String title;
12 | public ButtonPressed buttonPressed;
13 |
14 | MuPDFAlert(String aMessage, IconType aIconType, ButtonGroupType aButtonGroupType, String aTitle, ButtonPressed aButtonPressed) {
15 | message = aMessage;
16 | iconType = aIconType;
17 | buttonGroupType = aButtonGroupType;
18 | title = aTitle;
19 | buttonPressed = aButtonPressed;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFAlertInternal.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | // Version of MuPDFAlert without enums to simplify JNI
4 | public class MuPDFAlertInternal {
5 | public final String message;
6 | public final int iconType;
7 | public final int buttonGroupType;
8 | public final String title;
9 | public int buttonPressed;
10 |
11 | MuPDFAlertInternal(String aMessage, int aIconType, int aButtonGroupType, String aTitle, int aButtonPressed) {
12 | message = aMessage;
13 | iconType = aIconType;
14 | buttonGroupType = aButtonGroupType;
15 | title = aTitle;
16 | buttonPressed = aButtonPressed;
17 | }
18 |
19 | MuPDFAlertInternal(MuPDFAlert alert) {
20 | message = alert.message;
21 | iconType = alert.iconType.ordinal();
22 | buttonGroupType = alert.buttonGroupType.ordinal();
23 | title = alert.message;
24 | buttonPressed = alert.buttonPressed.ordinal();
25 | }
26 |
27 | MuPDFAlert toAlert() {
28 | return new MuPDFAlert(message, MuPDFAlert.IconType.values()[iconType], MuPDFAlert.ButtonGroupType.values()[buttonGroupType], title, MuPDFAlert.ButtonPressed.values()[buttonPressed]);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFCancellableTaskDefinition.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public abstract class MuPDFCancellableTaskDefinition implements CancellableTaskDefinition
4 | {
5 | private MuPDFCore.Cookie cookie;
6 |
7 | public MuPDFCancellableTaskDefinition(MuPDFCore core)
8 | {
9 | this.cookie = core.new Cookie();
10 | }
11 |
12 | @Override
13 | public void doCancel()
14 | {
15 | if (cookie == null)
16 | return;
17 |
18 | cookie.abort();
19 | }
20 |
21 | @Override
22 | public void doCleanup()
23 | {
24 | if (cookie == null)
25 | return;
26 |
27 | cookie.destroy();
28 | cookie = null;
29 | }
30 |
31 | @Override
32 | public final Result doInBackground(Params ... params)
33 | {
34 | return doInBackground(cookie, params);
35 | }
36 |
37 | public abstract Result doInBackground(MuPDFCore.Cookie cookie, Params ... params);
38 | }
39 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFPageAdapter.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.content.Context;
4 | import android.graphics.Point;
5 | import android.graphics.PointF;
6 | import android.util.SparseArray;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 | import android.widget.BaseAdapter;
10 |
11 | import com.artifex.utils.PdfBitmap;
12 |
13 | import java.util.Collection;
14 | import java.util.HashSet;
15 | import java.util.Set;
16 |
17 | public class MuPDFPageAdapter extends BaseAdapter {
18 | private final Context mContext;
19 | private final FilePicker.FilePickerSupport mFilePickerSupport;
20 | private final MuPDFCore mCore;
21 | private final SparseArray mPageSizes = new SparseArray();
22 | private SparseArray pages = new SparseArray();
23 | private Collection pdfBitmapList; // Each signature for each page.
24 | private int numSignature;
25 |
26 | public MuPDFPageAdapter(Context c, FilePicker.FilePickerSupport filePickerSupport, MuPDFCore core) {
27 | mContext = c;
28 | mFilePickerSupport = filePickerSupport;
29 | mCore = core;
30 | }
31 |
32 | public int getCount() {
33 | return mCore.countPages();
34 | }
35 |
36 | public Object getItem(int position) {
37 | return pages.get(position);
38 | }
39 |
40 | public long getItemId(int position) {
41 | return 0;
42 | }
43 |
44 | public View getView(final int position, View convertView, ViewGroup parent) {
45 |
46 | final MuPDFPageView pageView;
47 | if (pages.get(position) == null) {
48 | pageView = new MuPDFPageView(mContext, mFilePickerSupport, mCore, new Point(parent.getWidth(), parent.getHeight()), this);
49 | pages.put(position, pageView);
50 | } else {
51 | pageView = pages.get(position);
52 | }
53 |
54 | //Limit the pages cache to improve memory usage
55 | if(pages.size()>3){
56 | if(position>1) {
57 | MuPDFPageView previous = pages.get(position - 2);
58 | if(previous!=null){
59 | pages.removeAt(pages.indexOfValue(previous));
60 | previous=null;
61 | }
62 | MuPDFPageView post = pages.get(position + 2);
63 | if (post != null) {
64 | pages.removeAt(pages.indexOfValue(post));
65 | post = null;
66 | }
67 | }
68 | }
69 |
70 | PointF pageSize = mPageSizes.get(position);
71 | if (pageSize != null) {
72 | // We already know the page size. Set it up
73 | // immediately
74 | pageView.setPage(position, pageSize);
75 | } else {
76 | // Page size as yet unknown. Blank it for now, and
77 | // start a background task to find the size
78 | pageView.blank(position);
79 | AsyncTask sizingTask = new AsyncTask() {
80 | @Override
81 | protected PointF doInBackground(Void... arg0) {
82 | return mCore.getPageSize(position);
83 | }
84 |
85 | @Override
86 | protected void onPostExecute(PointF result) {
87 | super.onPostExecute(result);
88 | // We now know the page size
89 | mPageSizes.put(position, result);
90 | // Check that this view hasn't been reused for
91 | // another page since we started
92 | if (pageView.getPage() == position)
93 | pageView.setPage(position, result);
94 | }
95 | };
96 |
97 | sizingTask.execute((Void)null);
98 | }
99 | return pageView;
100 | }
101 |
102 | public Collection getPdfBitmapList() {
103 | if (pdfBitmapList == null) {
104 | pdfBitmapList = new HashSet();
105 | }
106 | return pdfBitmapList;
107 | }
108 |
109 | public void setPdfBitmapList(Collection pdfBitmapList) {
110 | this.pdfBitmapList = pdfBitmapList;
111 | }
112 |
113 | public int getNumSignature() {
114 | return numSignature;
115 | }
116 |
117 | public void setNumSignature(int numSignature) {
118 | this.numSignature = numSignature;
119 | }
120 |
121 | public void addBitmaps(Set pdfBitmaps) {
122 | if (pdfBitmaps != null) {
123 | for (PdfBitmap pdfBitmap : pdfBitmaps) {
124 | addBitmap(pdfBitmap);
125 | }
126 | }
127 | }
128 |
129 | public void addBitmap(PdfBitmap pdfBitmap) {
130 | if (pdfBitmap.getType() == PdfBitmap.Type.SIGNATURE) { //mAdapter null ???
131 | numSignature = numSignature + 1;
132 | }
133 | getPdfBitmapList().add(pdfBitmap);
134 | }
135 |
136 | }
137 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFReflowAdapter.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.content.Context;
4 | import android.graphics.Point;
5 | import android.graphics.PointF;
6 | import android.view.View;
7 | import android.view.ViewGroup;
8 | import android.widget.BaseAdapter;
9 |
10 | public class MuPDFReflowAdapter extends BaseAdapter {
11 | private final Context mContext;
12 | private final MuPDFCore mCore;
13 |
14 | public MuPDFReflowAdapter(Context c, MuPDFCore core) {
15 | mContext = c;
16 | mCore = core;
17 | }
18 |
19 | public int getCount() {
20 | return mCore.countPages();
21 | }
22 |
23 | public Object getItem(int arg0) {
24 | return null;
25 | }
26 |
27 | public long getItemId(int arg0) {
28 | return 0;
29 | }
30 |
31 | public View getView(int position, View convertView, ViewGroup parent) {
32 | final MuPDFReflowView reflowView;
33 | if (convertView == null) {
34 | reflowView = new MuPDFReflowView(mContext, mCore, new Point(parent.getWidth(), parent.getHeight()));
35 | } else {
36 | reflowView = (MuPDFReflowView) convertView;
37 | }
38 |
39 | reflowView.setPage(position, new PointF());
40 |
41 | return reflowView;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFReflowView.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.content.Context;
4 | import android.graphics.Point;
5 | import android.graphics.PointF;
6 | import android.graphics.RectF;
7 | import android.os.Handler;
8 | import android.util.Base64;
9 | import android.view.MotionEvent;
10 | import android.view.View;
11 | import android.webkit.WebView;
12 | import android.webkit.WebViewClient;
13 |
14 | public class MuPDFReflowView extends WebView implements MuPDFView {
15 | private final MuPDFCore mCore;
16 | private final Handler mHandler;
17 | private final Point mParentSize;
18 | private int mPage;
19 | private float mScale;
20 | private int mContentHeight;
21 | AsyncTask mLoadHTML;
22 |
23 | public MuPDFReflowView(Context c, MuPDFCore core, Point parentSize) {
24 | super(c);
25 | mHandler = new Handler();
26 | mCore = core;
27 | mParentSize = parentSize;
28 | mScale = 1.0f;
29 | mContentHeight = parentSize.y;
30 | getSettings().setJavaScriptEnabled(true);
31 | addJavascriptInterface(new Object(){
32 | public void reportContentHeight(String value) {
33 | mContentHeight = (int)Float.parseFloat(value);
34 | mHandler.post(new Runnable() {
35 | public void run() {
36 | requestLayout();
37 | }
38 | });
39 | }
40 | }, "HTMLOUT");
41 | setWebViewClient(new WebViewClient() {
42 | @Override
43 | public void onPageFinished(WebView view, String url) {
44 | setScale(mScale);
45 | }
46 | });
47 | }
48 |
49 | private void requestHeight() {
50 | // Get the webview to report the content height via the interface setup
51 | // above. Workaround for getContentHeight not working
52 | loadUrl("javascript:elem=document.getElementById('content');window.HTMLOUT.reportContentHeight("+mParentSize.x+"*elem.offsetHeight/elem.offsetWidth)");
53 | }
54 |
55 | public void setPage(int page, PointF size) {
56 | mPage = page;
57 | if (mLoadHTML != null) {
58 | mLoadHTML.cancel(true);
59 | }
60 | mLoadHTML = new AsyncTask() {
61 | @Override
62 | protected byte[] doInBackground(Void... params) {
63 | return mCore.html(mPage);
64 | }
65 | @Override
66 | protected void onPostExecute(byte[] result) {
67 | String b64 = Base64.encodeToString(result, Base64.DEFAULT);
68 | loadData(b64, "text/html; charset=utf-8", "base64");
69 | }
70 | };
71 | mLoadHTML.execute();
72 | }
73 |
74 | public int getPage() {
75 | return mPage;
76 | }
77 |
78 | public void setScale(float scale) {
79 | mScale = scale;
80 | loadUrl("javascript:document.getElementById('content').style.zoom=\""+(int)(mScale*100)+"%\"");
81 | requestHeight();
82 | }
83 |
84 | public void blank(int page) {
85 | }
86 |
87 | public Hit passClickEvent(float x, float y) {
88 | return Hit.Nothing;
89 | }
90 |
91 | public LinkInfo hitLink(float x, float y) {
92 | return null;
93 | }
94 |
95 | public void selectText(float x0, float y0, float x1, float y1) {
96 | }
97 |
98 | public void deselectText() {
99 | }
100 |
101 | public boolean copySelection() {
102 | return false;
103 | }
104 |
105 | public boolean markupSelection(Annotation.Type type) {
106 | return false;
107 | }
108 |
109 | public void startDraw(float x, float y) {
110 | }
111 |
112 | public void continueDraw(float x, float y) {
113 | }
114 |
115 | public void cancelDraw() {
116 | }
117 |
118 | public boolean saveDraw() {
119 | return false;
120 | }
121 |
122 | public void setSearchBoxes(RectF[] searchBoxes) {
123 | }
124 |
125 | public void setLinkHighlighting(boolean f) {
126 | }
127 |
128 | public void deleteSelectedAnnotation() {
129 | }
130 |
131 | public void deselectAnnotation() {
132 | }
133 |
134 | public void setChangeReporter(Runnable reporter) {
135 | }
136 |
137 | public void update() {
138 | }
139 |
140 | public void updateHq(boolean update) {
141 | }
142 |
143 | public void removeHq() {
144 | }
145 |
146 | public void releaseResources() {
147 | if (mLoadHTML != null) {
148 | mLoadHTML.cancel(true);
149 | mLoadHTML = null;
150 | }
151 | }
152 |
153 | public void releaseBitmaps() {
154 | }
155 |
156 | @Override
157 | protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
158 | int x, y;
159 | switch(MeasureSpec.getMode(widthMeasureSpec)) {
160 | case MeasureSpec.UNSPECIFIED:
161 | x = mParentSize.x;
162 | break;
163 | default:
164 | x = MeasureSpec.getSize(widthMeasureSpec);
165 | }
166 | switch(MeasureSpec.getMode(heightMeasureSpec)) {
167 | case MeasureSpec.UNSPECIFIED:
168 | y = mContentHeight;
169 | break;
170 | default:
171 | y = MeasureSpec.getSize(heightMeasureSpec);
172 | }
173 |
174 | setMeasuredDimension(x, y);
175 | }
176 |
177 | @Override
178 | public boolean onTouchEvent(MotionEvent ev) {
179 | // TODO Auto-generated method stub
180 | return false;
181 | }
182 | }
183 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/MuPDFView.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.PointF;
4 | import android.graphics.RectF;
5 |
6 | enum Hit {Nothing, Widget, Annotation};
7 |
8 | public interface MuPDFView {
9 | public void setPage(int page, PointF size);
10 | public void setScale(float scale);
11 | public int getPage();
12 | public void blank(int page);
13 | public Hit passClickEvent(float x, float y);
14 | public LinkInfo hitLink(float x, float y);
15 | public void selectText(float x0, float y0, float x1, float y1);
16 | public void deselectText();
17 | public boolean copySelection();
18 | public boolean markupSelection(Annotation.Type type);
19 | public void deleteSelectedAnnotation();
20 | public void setSearchBoxes(RectF searchBoxes[]);
21 | public void setLinkHighlighting(boolean f);
22 | public void deselectAnnotation();
23 | public void startDraw(float x, float y);
24 | public void continueDraw(float x, float y);
25 | public void cancelDraw();
26 | public boolean saveDraw();
27 | public void setChangeReporter(Runnable reporter);
28 | public void update();
29 | public void updateHq(boolean update);
30 | public void removeHq();
31 | public void releaseResources();
32 | public void releaseBitmaps();
33 | }
34 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/OutlineActivity.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.app.ListActivity;
4 | import android.os.Bundle;
5 | import android.view.View;
6 | import android.widget.ListView;
7 |
8 | public class OutlineActivity extends ListActivity {
9 | OutlineItem mItems[];
10 |
11 | /** Called when the activity is first created. */
12 | @Override
13 | public void onCreate(Bundle savedInstanceState) {
14 | super.onCreate(savedInstanceState);
15 |
16 | mItems = OutlineActivityData.get().items;
17 | setListAdapter(new OutlineAdapter(getLayoutInflater(),mItems));
18 | // Restore the position within the list from last viewing
19 | getListView().setSelection(OutlineActivityData.get().position);
20 | getListView().setDividerHeight(0);
21 | setResult(-1);
22 | }
23 |
24 | @Override
25 | protected void onListItemClick(ListView l, View v, int position, long id) {
26 | super.onListItemClick(l, v, position, id);
27 | OutlineActivityData.get().position = getListView().getFirstVisiblePosition();
28 | setResult(mItems[position].page);
29 | finish();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/OutlineActivityData.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public class OutlineActivityData {
4 | public OutlineItem items[];
5 | public int position;
6 | static private OutlineActivityData singleton;
7 |
8 | static public void set(OutlineActivityData d) {
9 | singleton = d;
10 | }
11 |
12 | static public OutlineActivityData get() {
13 | if (singleton == null)
14 | singleton = new OutlineActivityData();
15 | return singleton;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/OutlineAdapter.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.view.LayoutInflater;
4 | import android.view.View;
5 | import android.view.ViewGroup;
6 | import android.widget.BaseAdapter;
7 | import android.widget.TextView;
8 |
9 | public class OutlineAdapter extends BaseAdapter {
10 | private final OutlineItem mItems[];
11 | private final LayoutInflater mInflater;
12 | public OutlineAdapter(LayoutInflater inflater, OutlineItem items[]) {
13 | mInflater = inflater;
14 | mItems = items;
15 | }
16 |
17 | public int getCount() {
18 | return mItems.length;
19 | }
20 |
21 | public Object getItem(int arg0) {
22 | return null;
23 | }
24 |
25 | public long getItemId(int arg0) {
26 | return 0;
27 | }
28 |
29 | public View getView(int position, View convertView, ViewGroup parent) {
30 | View v;
31 | if (convertView == null) {
32 | v = mInflater.inflate(R.layout.outline_entry, null);
33 | } else {
34 | v = convertView;
35 | }
36 | int level = mItems[position].level;
37 | if (level > 8) level = 8;
38 | String space = "";
39 | for (int i=0; i= 0) {
86 | baos.write(buffer, 0, n);
87 | n = is.read(buffer);
88 | }
89 | is.close();
90 | baos.flush();
91 |
92 | return Base64.encodeToString(baos.toByteArray(), Base64.DEFAULT);
93 | } catch (Throwable e) {
94 | resultCode = RESULT_CANCELED;
95 | setResult(resultCode);
96 | finish();
97 | e.printStackTrace();
98 | }
99 | return "";
100 | }
101 |
102 | public String getEncoding() {
103 | return CONTENT_TRANSFER_ENCODING;
104 | }
105 |
106 | public void onPostMessage(String message) {
107 | if (message.startsWith(CLOSE_POST_MESSAGE_NAME)) {
108 | setResult(resultCode);
109 | finish();
110 | }
111 | }
112 | }
113 |
114 | private final class PrintDialogWebClient extends WebViewClient {
115 | @Override
116 | public boolean shouldOverrideUrlLoading(WebView view, String url) {
117 | if (url.startsWith(ZXING_URL)) {
118 | Intent intentScan = new Intent("com.google.zxing.client.android.SCAN");
119 | intentScan.putExtra("SCAN_MODE", "QR_CODE_MODE");
120 | try {
121 | startActivityForResult(intentScan, ZXING_SCAN_REQUEST);
122 | } catch (ActivityNotFoundException error) {
123 | view.loadUrl(url);
124 | }
125 | } else {
126 | view.loadUrl(url);
127 | }
128 | return false;
129 | }
130 |
131 | @Override
132 | public void onPageFinished(WebView view, String url) {
133 | if (PRINT_DIALOG_URL.equals(url)) {
134 | // Submit print document.
135 | view.loadUrl("javascript:printDialog.setPrintDocument(printDialog.createPrintDocument("
136 | + "window." + JS_INTERFACE + ".getType(),window." + JS_INTERFACE + ".getTitle(),"
137 | + "window." + JS_INTERFACE + ".getContent(),window." + JS_INTERFACE + ".getEncoding()))");
138 |
139 | // Add post messages listener.
140 | view.loadUrl("javascript:window.addEventListener('message',"
141 | + "function(evt){window." + JS_INTERFACE + ".onPostMessage(evt.data)}, false)");
142 | }
143 | }
144 | }
145 | }
146 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/SafeAnimatorInflater.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.animation.Animator;
4 | import android.animation.AnimatorInflater;
5 | import android.animation.AnimatorSet;
6 | import android.app.Activity;
7 | import android.view.View;
8 |
9 | public class SafeAnimatorInflater
10 | {
11 | private View mView;
12 |
13 | public SafeAnimatorInflater(Activity activity, int animation, View view)
14 | {
15 | AnimatorSet set = (AnimatorSet) AnimatorInflater.loadAnimator(activity, R.animator.info);
16 | mView = view;
17 | set.setTarget(view);
18 | set.addListener(new Animator.AnimatorListener() {
19 | public void onAnimationStart(Animator animation) {
20 | mView.setVisibility(View.VISIBLE);
21 | }
22 |
23 | public void onAnimationRepeat(Animator animation) {
24 | }
25 |
26 | public void onAnimationEnd(Animator animation) {
27 | mView.setVisibility(View.INVISIBLE);
28 | }
29 |
30 | public void onAnimationCancel(Animator animation) {
31 | }
32 | });
33 | set.start();
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/SearchTask.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.app.AlertDialog;
4 | import android.app.ProgressDialog;
5 | import android.content.Context;
6 | import android.content.DialogInterface;
7 | import android.graphics.RectF;
8 | import android.os.Handler;
9 |
10 | class ProgressDialogX extends ProgressDialog {
11 | public ProgressDialogX(Context context) {
12 | super(context);
13 | }
14 |
15 | private boolean mCancelled = false;
16 |
17 | public boolean isCancelled() {
18 | return mCancelled;
19 | }
20 |
21 | @Override
22 | public void cancel() {
23 | mCancelled = true;
24 | super.cancel();
25 | }
26 | }
27 |
28 | public abstract class SearchTask {
29 | private static final int SEARCH_PROGRESS_DELAY = 200;
30 | private final Context mContext;
31 | private final MuPDFCore mCore;
32 | private final Handler mHandler;
33 | private final AlertDialog.Builder mAlertBuilder;
34 | private AsyncTask mSearchTask;
35 |
36 | public SearchTask(Context context, MuPDFCore core) {
37 | mContext = context;
38 | mCore = core;
39 | mHandler = new Handler();
40 | mAlertBuilder = new AlertDialog.Builder(context);
41 | }
42 |
43 | protected abstract void onTextFound(SearchTaskResult result);
44 |
45 | public void stop() {
46 | if (mSearchTask != null) {
47 | mSearchTask.cancel(true);
48 | mSearchTask = null;
49 | }
50 | }
51 |
52 | public void go(final String text, int direction, int displayPage, int searchPage) {
53 | if (mCore == null)
54 | return;
55 | stop();
56 |
57 | final int increment = direction;
58 | final int startIndex = searchPage == -1 ? displayPage : searchPage + increment;
59 |
60 | final ProgressDialogX progressDialog = new ProgressDialogX(mContext);
61 | progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
62 | progressDialog.setTitle(mContext.getString(R.string.searching_));
63 | progressDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
64 | public void onCancel(DialogInterface dialog) {
65 | stop();
66 | }
67 | });
68 | progressDialog.setMax(mCore.countPages());
69 |
70 | mSearchTask = new AsyncTask() {
71 | @Override
72 | protected SearchTaskResult doInBackground(Void... params) {
73 | int index = startIndex;
74 |
75 | while (0 <= index && index < mCore.countPages() && !isCancelled()) {
76 | publishProgress(index);
77 | RectF searchHits[] = mCore.searchPage(index, text);
78 |
79 | if (searchHits != null && searchHits.length > 0)
80 | return new SearchTaskResult(text, index, searchHits);
81 |
82 | index += increment;
83 | }
84 | return null;
85 | }
86 |
87 | @Override
88 | protected void onPostExecute(SearchTaskResult result) {
89 | progressDialog.cancel();
90 | if (result != null) {
91 | onTextFound(result);
92 | } else {
93 | mAlertBuilder.setTitle(SearchTaskResult.get() == null ? R.string.text_not_found : R.string.no_further_occurrences_found);
94 | AlertDialog alert = mAlertBuilder.create();
95 | alert.setButton(AlertDialog.BUTTON_POSITIVE, mContext.getString(R.string.dismiss),
96 | (DialogInterface.OnClickListener)null);
97 | alert.show();
98 | }
99 | }
100 |
101 | @Override
102 | protected void onCancelled() {
103 | progressDialog.cancel();
104 | }
105 |
106 | @Override
107 | protected void onProgressUpdate(Integer... values) {
108 | progressDialog.setProgress(values[0].intValue());
109 | }
110 |
111 | @Override
112 | protected void onPreExecute() {
113 | super.onPreExecute();
114 | mHandler.postDelayed(new Runnable() {
115 | public void run() {
116 | if (!progressDialog.isCancelled())
117 | {
118 | progressDialog.show();
119 | progressDialog.setProgress(startIndex);
120 | }
121 | }
122 | }, SEARCH_PROGRESS_DELAY);
123 | }
124 | };
125 |
126 | mSearchTask.execute();
127 | }
128 | }
129 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/SearchTaskResult.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.RectF;
4 |
5 | public class SearchTaskResult {
6 | public final String txt;
7 | public final int pageNumber;
8 | public final RectF searchBoxes[];
9 | static private SearchTaskResult singleton;
10 |
11 | SearchTaskResult(String _txt, int _pageNumber, RectF _searchBoxes[]) {
12 | txt = _txt;
13 | pageNumber = _pageNumber;
14 | searchBoxes = _searchBoxes;
15 | }
16 |
17 | static public SearchTaskResult get() {
18 | return singleton;
19 | }
20 |
21 | static public void set(SearchTaskResult r) {
22 | singleton = r;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/Stepper.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.annotation.SuppressLint;
4 | import android.os.Build;
5 | import android.view.View;
6 |
7 | public class Stepper {
8 | protected final View mPoster;
9 | protected final Runnable mTask;
10 | protected boolean mPending;
11 |
12 | public Stepper(View v, Runnable r) {
13 | mPoster = v;
14 | mTask = r;
15 | mPending = false;
16 | }
17 |
18 | @SuppressLint("NewApi")
19 | public void prod() {
20 | if (!mPending) {
21 | mPending = true;
22 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
23 | mPoster.postOnAnimation(new Runnable() {
24 | @Override
25 | public void run() {
26 | mPending = false;
27 | mTask.run();
28 | }
29 | });
30 | } else {
31 | mPoster.post(new Runnable() {
32 | @Override
33 | public void run() {
34 | mPending = false;
35 | mTask.run();
36 | }
37 | });
38 |
39 | }
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/TextChar.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.RectF;
4 |
5 | public class TextChar extends RectF {
6 | public char c;
7 |
8 | public TextChar(float x0, float y0, float x1, float y1, char _c) {
9 | super(x0, y0, x1, y1);
10 | c = _c;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/TextWord.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | import android.graphics.RectF;
4 |
5 | public class TextWord extends RectF {
6 | public String w;
7 |
8 | public TextWord() {
9 | super();
10 | w = new String();
11 | }
12 |
13 | public void Add(TextChar tc) {
14 | super.union(tc);
15 | w = w.concat(new String(new char[]{tc.c}));
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/mupdfdemo/WidgetType.java:
--------------------------------------------------------------------------------
1 | package com.artifex.mupdfdemo;
2 |
3 | public enum WidgetType {
4 | NONE,
5 | TEXT,
6 | LISTBOX,
7 | COMBOBOX,
8 | SIGNATURE
9 | }
10 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/utils/DigitalizedEventCallback.java:
--------------------------------------------------------------------------------
1 | package com.artifex.utils;
2 |
3 | /**
4 | * Created by @elage on 6/2/15.
5 | */
6 | public interface DigitalizedEventCallback {
7 |
8 | public static final String ERROR_OUTSIDE_VERTICAL = "ERROR_OUTSIDE_VERTICAL";
9 | public static final String ERROR_OUTSIDE_HORIZONTAL = "ERROR_OUTSIDE_HORIZONTAL";
10 |
11 | public void longPressOnPdfPosition(int page, float viewX, float viewY, float pdfX, float pdfY);
12 | public void doubleTapOnPdfPosition(int page, float viewX, float viewY, float pdfX, float pdfY);
13 | public void singleTapOnPdfPosition(int page, float viewX, float viewY, float pdfX, float pdfY);
14 | public void error(String message);
15 | }
16 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/java/com/artifex/utils/PdfBitmap.java:
--------------------------------------------------------------------------------
1 | package com.artifex.utils;
2 |
3 | import android.graphics.Bitmap;
4 | import android.os.Parcel;
5 | import android.os.Parcelable;
6 | import android.util.Log;
7 |
8 | import java.io.Serializable;
9 | import java.util.HashMap;
10 |
11 | public class PdfBitmap implements Parcelable {
12 |
13 | public enum Type {
14 | SIGNATURE, // Signature used to sign the document
15 | SIGNATURE_USER_IMAGE, // User image of some older versions on Viafirma, where we sent the image to the server for it to process that along with the signature.
16 | IMAGE // All generic images shown
17 | };
18 |
19 | private Bitmap image;
20 | private int height;
21 | private int width;
22 | private int pageNumber;
23 | private int pdfX;
24 | private int pdfY;
25 | private Type type;
26 | private boolean isRemovable;
27 | private HashMap metadata;
28 |
29 | /**
30 | * This class is used to store the information of each stamp and annotation on the PDF.
31 | * @param image The bitmap in charge of storing the stamp or annotation
32 | * @param height The height defined for the drawing
33 | * @param width The width defined for the drawing
34 | * @param pdfX The X coordinate position defined for the drawing
35 | * @param pdfY The Y coordinate position defined for the drawing
36 | * @param page The page of the PDF where the bitmap is added
37 | */
38 | public PdfBitmap(Bitmap image, int width, int height, int pdfX, int pdfY, int page, Type type) {
39 | this.image = image;
40 | this.height = height;
41 | this.width = width;
42 | this.pdfX = pdfX;
43 | this.pdfY = pdfY;
44 | this.pageNumber = page;// first page is 0
45 | this.type = type;
46 | this.isRemovable = true;
47 | this.metadata = new HashMap<>();
48 | }
49 |
50 | public PdfBitmap(Parcel in) {
51 | // We just need to read back each
52 | // field in the order that it was
53 | image = in.readParcelable(Bitmap.class.getClassLoader());
54 | height = in.readInt();
55 | width = in.readInt();
56 | pdfX = in.readInt();
57 | pdfY = in.readInt();
58 | pageNumber = in.readInt();
59 | String typeString = in.readString();
60 | if (typeString != null) {
61 | type = Type.valueOf(typeString);
62 | }
63 | isRemovable = in.readByte() != 0;
64 | in.readMap(metadata, HashMap.class.getClassLoader());
65 | }
66 |
67 | public Bitmap getBitmapImage() {
68 | return image;
69 | }
70 |
71 | public int getWidth() {
72 | return width;
73 | }
74 |
75 | public int getHeight() {
76 | return height;
77 | }
78 |
79 | public int getPageNumber() {
80 | return pageNumber;
81 | }
82 |
83 | @Override
84 | public int describeContents() {
85 | return 0;
86 | }
87 |
88 | @Override
89 | public void writeToParcel(Parcel dest, int flags) {
90 | dest.writeParcelable(image, flags);
91 | dest.writeInt(height);
92 | dest.writeInt(width);
93 | dest.writeInt(pdfX);
94 | dest.writeInt(pdfY);
95 | dest.writeInt(pageNumber);
96 | dest.writeString(type.name());
97 | dest.writeByte((byte)(isRemovable ? 1 : 0));
98 | dest.writeMap(metadata);
99 | }
100 |
101 | public static final Creator CREATOR = new Creator() {
102 | public PdfBitmap createFromParcel(Parcel in) {
103 | return new PdfBitmap(in);
104 | }
105 | public PdfBitmap[] newArray(int size) {
106 | return new PdfBitmap[size];
107 | }
108 | };
109 |
110 | public int getPdfX() {
111 | return pdfX;
112 | }
113 |
114 | public int getPdfY() {
115 | return pdfY;
116 | }
117 |
118 | public Type getType() {
119 | return type;
120 | }
121 |
122 | public void setType(Type type) {
123 | this.type = type;
124 | }
125 |
126 | public boolean isRemovable() {
127 | return isRemovable;
128 | }
129 |
130 | public void setIsRemovable(boolean isRemovable) {
131 | this.isRemovable = isRemovable;
132 | }
133 |
134 | public HashMap getMetadata() {
135 | return metadata;
136 | }
137 |
138 | public void setMetadata(HashMap metadata) {
139 | this.metadata = metadata;
140 | }
141 |
142 | @Override
143 | public String toString() {
144 | String result = "page:"+pageNumber+", x:"+pdfX+", y:"+pdfY+", width:"+width+", height:"+height+", type:"+type.name();
145 | return result;
146 | }
147 |
148 | @Override
149 | public boolean equals(Object o) {
150 | boolean result = false;
151 | try {
152 | if (o == this) {
153 | result = true;
154 | } else if (o instanceof PdfBitmap) {
155 | PdfBitmap that = (PdfBitmap) o;
156 | boolean sameBitmaps = that.getBitmapImage().sameAs(image);
157 | result = (that.getPdfX() == pdfX) && (that.getPdfY() == pdfY) && (that.getHeight() == height) && (that.getWidth() == width) && (that.getPageNumber() == pageNumber) && sameBitmaps;
158 | }
159 | } catch (Exception e) {
160 | Log.e("PdfBitmap", e.getLocalizedMessage(), e);
161 | }
162 | return result;
163 | }
164 | }
165 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/jniLibs/armeabi-v7a/libmupdf.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/jniLibs/armeabi-v7a/libmupdf.so
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/jniLibs/armeabi/libmupdf.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/jniLibs/armeabi/libmupdf.so
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/animator/info.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
11 |
15 |
16 |
20 |
21 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-hdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-hdpi/icon.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_annot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_annot.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_annotation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_annotation.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_arrow_left.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_arrow_right.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_cancel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_cancel.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_check.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_check.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_clipboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_clipboard.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_dir.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_dir.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_doc.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_highlight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_highlight.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_link.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_link.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_list.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_magnifying_glass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_magnifying_glass.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_more.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_more.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_pen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_pen.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_print.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_print.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_reflow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_reflow.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_select.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_share.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_share.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_strike.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_strike.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_trash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_trash.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_underline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_underline.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_updir.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/ic_updir.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-ldpi/icon.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_annot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_annot.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_annotation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_annotation.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_left.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_right.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_arrow_up.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_cancel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_cancel.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_check.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_check.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_clipboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_clipboard.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_dir.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_dir.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_doc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_doc.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_highlight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_highlight.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_link.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_link.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_list.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_magnifying_glass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_magnifying_glass.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_more.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_more.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_pen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_pen.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_print.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_print.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_reflow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_reflow.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_select.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_share.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_share.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_strike.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_strike.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_trash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_trash.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_underline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/ic_underline.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-mdpi/icon.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable-xhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable-xhdpi/icon.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/busy.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/button.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 |
10 | -
11 |
12 |
13 |
14 |
15 |
16 |
17 | -
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/darkdenim3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JubinMathai/MuPDFDemo-Java/57b614758f3fc2db9c5b3147b25726443a6e03da/MuPDFDemo/mupdf-android-master/src/main/res/drawable/darkdenim3.png
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/page_num.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/search.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
13 |
14 |
15 | -
16 |
17 |
18 |
19 |
24 |
25 |
26 | -
27 |
28 |
29 |
30 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/seek_progress.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/seek_thumb.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/drawable/tiled_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/layout/main.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/layout/outline_entry.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
16 |
17 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/layout/picker_entry.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
13 |
14 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/layout/print_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/layout/textentry.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ar/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | قبول
4 | MuPDF
5 | إلغاء
6 | تعذر فتح المخزن المؤقت
7 | تعذر فتح المستند
8 | تعذر فتح المستند: %1$s
9 | تعذر فتح الملف: %1$s
10 | اختر قيمة
11 | تم النسخ إلى الحافظة
12 | نسخ
13 | نسخ النص
14 | نسخ النص إلى الحافظة
15 | حذف
16 | تجاهل
17 | يحتوي المستند على تغييرات. هل تريد حفظها؟
18 | سحب تعليق توضيحي
19 | تعديل التعليقات التوضيحية
20 | أدخل كلمة المرور
21 | دخول إلى وضع إعادة التدفق
22 | تعبئة حقل النص
23 | التنسيق غير مدعوم حاليًا
24 | تظليل
25 | حبر
26 | خروج من وضع إعادة التدفق
27 | المزيد
28 | لا
29 | لم يتم العثور على متكررات أخرى
30 | مشاركة وسائط التخزين مع حاسوب شخصي قد يمنع الوصول إليها
31 | وسائط التخزين غير موجودة
32 | لم يتم تحديد نص
33 | غير مدعوم
34 | لا يوجد شيء لحفظه
35 | موافق
36 | جدول المحتويات
37 | [أعلى مستوى واحد]
38 | %1$s %2$s: %3$s
39 | طباعة
40 | فشلت الطباعة
41 | حفظ
42 | بحث
43 | بحث إلى الخلف
44 | بحث في المستند
45 | بحث إلى الأمام
46 | جاري البحث في…
47 | تحديد
48 | تحديد النص
49 | شطب
50 | لم يتم العثور على النص
51 | تظليل وتمكين الروابط
52 | تسطير
53 | نعم
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ca/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Acceptar
4 | MuPDF
5 | Cancel·lar
6 | No es pot obrir el buffer
7 | No es pot obrir el document
8 | No es pot obrir el document: %1$s
9 | No es pot obrir l\'arxiu: %1$s
10 | Tria el valor
11 | Copiat al portapapers
12 | Copiar
13 | copiar text
14 | Copiar text al portapapers
15 | Esborrar
16 | Descartar
17 | El document té canvis. Desar?
18 | Dibuixar anotació
19 | Editar anotacions
20 | Introduir contrasenya
21 | Entrant en modo de reflux
22 | Emplena el camp de text
23 | Format no suportat actualment
24 | Destacar
25 | Tinta
26 | Abandonant modo de reflux
27 | Més
28 | No
29 | No hi ha més coincidències
30 | Compartir el mitjà d\'emmagatzematge amb un PC pot fer que sigui inaccessible
31 | Mitjà d\'emmagatzematge no present
32 | No s\'ha seleccionat text
33 | No compatible
34 | No hi ha gens que guardar
35 | Acceptar
36 | Índex
37 | [Pujar un nivell]
38 | %1$s %2$s: %3$s
39 | Imprimir
40 | Fallada al imprimir
41 | Desar
42 | Buscar
43 | Buscar cap a enrere
44 | Buscar document
45 | Buscar cap a davant
46 | Buscant…
47 | Seleccionar
48 | Seleccionar text
49 | Ratllat
50 | Text no trobat
51 | Ressaltar i habilitar enllaços
52 | Subratllat
53 | Sí
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-cs/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Přijmout
4 | MuPDF
5 | Zrušit
6 | Nelze otevřít vyrovnávací paměť
7 | Nelze otevřít dokument
8 | Nelze otevřít dokument: %1$s
9 | Nelze otevřít soubor: %1$s
10 | Zvolte hodnotu
11 | Kopírováno do schránky
12 | Kopírovat
13 | kopírovat text
14 | Kopírovat text do schránky
15 | Smazat
16 | Odmítnout
17 | Dokument byl změněn. Uložit?
18 | Vložit anotaci
19 | Upravit anotace
20 | Zadat heslo
21 | Vstup do režimu přeformátování řádků
22 | Vyplnit textové pole
23 | Formát aktuálně nepodporován
24 | Zvýraznit
25 | Inkoust
26 | Odchod z režimu přeformátování řádků
27 | Více
28 | Ne
29 | Nenalezeny další výskyty
30 | Při sdílení s PC může být paměťové médium nedostupné
31 | Paměťové médim nenalezeno
32 | Nevybrán žádný text
33 | Nepodporováno
34 | Nic k uložení
35 | OK
36 | Obsah
37 | [Nahoru o jednu úroveň]
38 | %1$s %2$s: %3$s
39 | Tisk
40 | Tisk selhal
41 | Uložit
42 | Hledat
43 | Hledat zpět
44 | Prohledat dokument
45 | Hledat vpřed
46 | Hledání…
47 | Vybrat
48 | Vybrat text
49 | Přeškrtnout
50 | Text nenalezen
51 | Zvýraznit a aktivovat odkazy
52 | Podtrhnout
53 | Ano
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-da/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Accepter
4 | MuPDF
5 | Annuller
6 | Buffer kan ikke åbnes
7 | Dokument kan ikke åbnes
8 | Kan ikke åbne dokumentet: %1$s
9 | Kan ikke åbne filen: %1$s
10 | Vælg værdi
11 | Kopieret til udklipsholder
12 | Kopier
13 | kopier tekst
14 | kopier tekst til udklipsholder
15 | Slet
16 | Afvis
17 | Dokumentet er ændret. Gem ændringer?
18 | Lav anmærkning
19 | Rediger anmærkninger
20 | Indtast adgangskode
21 | Går over til konverteringstilstand
22 | Udfyld tekstfelt
23 | Format ikke understøttet i øjeblikket
24 | Fremhæv
25 | Ink
26 | Forlader konverteringstilstand
27 | Mere
28 | Nej
29 | Der blev ikke fundet flere tilfælde
30 | Deles lagermediet med en PC, kan det gøre det utilgængeligt
31 | Lagermedie ikke fundet
32 | Ingen tekst valgt
33 | Ikke understøttet
34 | Intet at gemme
35 | Okay
36 | Indholdsfortegnelse
37 | [Et niveau op]
38 | %1$s %2$s: %3$s
39 | Udskriv
40 | Udskrivning mislykket
41 | Gem
42 | Søg
43 | Søg bagud
44 | Søg i dokument
45 | Søg fremad
46 | Søger…
47 | Vælg
48 | Vælg tekst
49 | Gennemstreget
50 | Tekst ikke fundet
51 | Fremhæv og aktiver links
52 | Understreg
53 | Ja
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-de/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Akzeptieren
4 | MuPDF
5 | Abbrechen
6 | Zwischenspeicher kann nicht geöffnet werden
7 | Dokument kann nicht geöffnet werden
8 | Dokument kann nicht geöffnet werden: %1$s
9 | Datei kann nicht geöffnet werden: %1$s
10 | Wert auswählen
11 | In die Zwischenanlage kopiert
12 | Kopieren
13 | Text kopieren
14 | Text in Zwischenablage kopieren
15 | Entfernen
16 | Verwerfen
17 | Das Dokument wurde verändert. Sollen die Änderungen gespeichert werden?
18 | Kommentar einfügen
19 | Kommentar bearbeiten
20 | Passwort eingeben
21 | Anpassungsmodus wird gestartet
22 | Textfeld ausfüllen
23 | Format wird momentan nicht unterstützt
24 | Markieren
25 | Farbe
26 | Anpassungsmodus wird beendet
27 | Mehr
28 | Nein
29 | Keine weiteren Treffer
30 | Die Freigabe des Speichermediums für einen PC kann es unzugänglich machen
31 | Speichermedium nicht vorhanden
32 | Kein Text ausgewählt
33 | Nicht unterstützt
34 | Nichts zum Speichern
35 | OK
36 | Inhaltsverzeichnis
37 | [Eine Ebene nach oben]
38 | %1$s %2$s: %3$s
39 | Drucken
40 | Fehler beim Drucken
41 | Speichern
42 | Suchen
43 | Rückwärts suchen
44 | Dokument durchsuchen
45 | Vorwärts suchen
46 | Suche…
47 | Auswählen
48 | Text auswählen
49 | Durchstreichen
50 | Text konnte nicht gefunden werden
51 | Markiere und aktiviere Verknüpfungen
52 | Unterstreichen
53 | Ja
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-el/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Αποδοχή
4 | MuPDF
5 | Ακύρωση
6 | Αδυναμία ανοίγματος buffer
7 | Αδυναμία ανοίγματος εγγράφου
8 | Αδυναμία ανοίγματος εγγράφου: %1$s
9 | Αδυναμία ανοίγματος αρχείου: %1$s
10 | Επιλογή τιμής
11 | Αντιγράφηκε στο πρόχειρο
12 | Αντιγραφή
13 | αντιγραφή κειμένου
14 | Αντιγραφή κειμένου στο πρόχειρο
15 | Διαγραφή
16 | Ματαίωση
17 | Το έγγραφο έχει αλλαγές. Να αποθηκευτούν;
18 | Σχεδίαση σχολίου
19 | Επεξεργασία σχολίων
20 | Πληκτρολογήστε κωδικό πρόσβασης
21 | Είσοδος σε λειτουργία δυναμικής προσαρμογής
22 | Συμπλήρωση πεδίου κειμένου
23 | Αυτή η μορφή δεν υποστηρίζεται τη δεδομένη στιγμή
24 | Επισήμανση
25 | Γραφή
26 | Έξοδος από λειτουργία δυναμικής προσαρμογής
27 | Περισσότερο
28 | Όχι
29 | Δεν βρέθηκαν άλλες εμφανίσεις
30 | Η κοινή χρήση του αποθηκευτικού μέσου με έναν υπολογιστή μπορεί να το καταστήσει μη προσβάσιμο
31 | Δεν υπάρχει αποθηκευτικό μέσο
32 | Δεν έχει επιλεγεί κείμενο
33 | Δεν υποστηρίζεται
34 | Δεν υπάρχει περιεχόμενο για αποθήκευση
35 | ΟΚ
36 | Πίνακας περιεχομένων
37 | [Ένα επίπεδο επάνω]
38 | %1$s %2$s: %3$s
39 | Εκτύπωση
40 | Η εκτύπωση απέτυχε
41 | Αποθήκευση
42 | Αναζήτηση
43 | Αναζήτηση προς τα πίσω
44 | Αναζήτηση εγγράφου
45 | Αναζήτηση προς τα μπροστά
46 | Αναζήτηση…
47 | Επιλογή
48 | Επιλογή κειμένου
49 | Διακριτή διαγραφή
50 | Δεν βρέθηκε το κείμενο
51 | Επισήμανση και ενεργοποίηση συνδέσεων
52 | Υπογράμμιση
53 | Ναι
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-es/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Aceptar
4 | MuPDF
5 | Cancelar
6 | No se puede abrir el búfer
7 | No se puede abrir el documento
8 | No se puede abrir el documento:%1$s
9 | No se puede abrir el archivo: %1$s
10 | Elegir valor
11 | Copiado al portapapeles
12 | Copiar
13 | copiar texto
14 | Copiar texto al portapapeles
15 | Borrar
16 | Ignorar
17 | El documento tiene cambios. ¿Guardar?
18 | Dibujar anotación
19 | Editar anotaicones
20 | Introducir contraseña
21 | Entrando en el modo de redistribución
22 | Rellenar el campo de texto
23 | Formato actualmente no soportado
24 | Resaltar
25 | Tinta
26 | Saliendo del modo de redistribución
27 | Más
28 | No
29 | No se han encontrado más casos
30 | Compartir el medio de almacenamiento con un PC puede hacerlo inaccesible
31 | Medio de almacenimiento no presente
32 | Texto no seleccionado
33 | No aceptado
34 | Nada que guardar
35 | OK
36 | Tabla de contenidos
37 | [Subir un nivel]
38 | %1$s %2$s: %3$s
39 | Imprimir
40 | No se ha imprimido
41 | Guardar
42 | Buscar
43 | Buscar hacia atrás
44 | Buscar documento
45 | Buscar hacia adelante
46 | Buscando…
47 | Seleccionar
48 | Seleccionar texto
49 | Tachar
50 | Texto no encontrado
51 | Resaltar y activar
52 | Subrayar
53 | Sí
54 |
55 | No ha sido posible abrir el documento
56 | Toque dos veces seguidas donde desee ubicar su firma
57 | Atención
58 | El documento no ha sido firmado.Por favor, toque dos veces seguidas donde desee ubicar su firma.
59 |
60 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-et/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Nõustu
4 | MuPDF
5 | Tühista
6 | Ei saa avada puhvrit
7 | Ei saa avada dokumenti
8 | Ei saa avada dokumenti: %1$s
9 | Ei saa avada faili: %1$s
10 | Vali väärtus
11 | Kopeeritud lõikelauale
12 | Kopeeri
13 | kopeeri tekst
14 | Kopeeri tekst lõikelauale
15 | Kustuta
16 | Lõpeta
17 | Dokumendis on tehtud muudatusi. Kas salvestada need?
18 | Tee marginaal
19 | Redigeeri marginaale
20 | Sisesta salasõna
21 | Sisenen ümberpaigutamise režiimi
22 | Täida tekstiväli
23 | Vormingul puudub hetkel tugi
24 | Tõsta esile
25 | Tint
26 | Lahkun ümberpaigutamise režiimist
27 | Veel
28 | Ei
29 | Ei leitud rohkem juhtumeid
30 | Salvestuskandja jagamine arvutiga võib selle juurdepääsmatuks muuta
31 | Salvestuskandja puudub
32 | Teksti ei ole valitud
33 | Puudub tugi
34 | Ei ole midagi salvestada
35 | OK
36 | Sisukord
37 | [Taseme võrra üles]
38 | %1$s%2$s%3$s
39 | Prindi
40 | Printimine ebaõnnestus
41 | Salvesta
42 | Otsi
43 | Otsi tagasisuunas
44 | Otsi dokumendist
45 | Otsi edasisuunas
46 | Otsin…
47 | Vali
48 | Vali tekst
49 | Läbikriipsutus
50 | Teksti ei leitud
51 | Tõsta lingid esile ja luba need
52 | Jooni alla
53 | Jah
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-fi/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hyväksy
4 | MuPDF
5 | Peruuta
6 | Puskuria ei voi avata
7 | Tiedostoa ei voi avata
8 | Ei voi avata tiedostoa: %1$s
9 | Ei voi avata tiedostoa: %1$s
10 | Valitse arvo
11 | Kopioitu leikepöydälle
12 | Kopioi
13 | kopio teksti
14 | Kopioi teksti leikepöydälle
15 | Poista
16 | Hylkää
17 | Tiedostossa on muutoksia. Haluatko tallentaa muutokset?
18 | Piirrä huomautus
19 | Muokkaa huomautuksia
20 | Anna salasana
21 | Siirrytään takaisinmuuntotilaan
22 | Täytä tekstikenttä
23 | Muotoa ei tällä hetkellä tueta
24 | Korosta
25 | Muste
26 | Poistutaan takaisinmuuntotilasta
27 | Lisää
28 | Ei
29 | Muita esiintymiä ei löydy
30 | Tallennustietovälineen jakaminen tietokoneen kanssa voi estää sen käyttämisen
31 | Tallennustietoväline ei ole käytössä
32 | Ei valittua tekstiä
33 | Ei tuettu
34 | Ei mitään tallennettavaa
35 | OK
36 | Sisällys
37 | [Yksi taso ylöspäin]
38 | %1$s %2$s: %3$s
39 | Tulosta
40 | Tulostus ei onnistunut
41 | Tallenna
42 | Haku
43 | Hae taaksepäin
44 | Hae tiedostosta
45 | Hae eteenpäin
46 | Haetaan …
47 | Valitse
48 | Valitse teksti
49 | Yliviivaa
50 | Tekstiä ei löydy
51 | Korosta ja ota käyttöön linkit
52 | Alleviivaa
53 | Kyllä
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-fr/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Accepter
4 | MuPDF
5 | Annuler
6 | Impossible d\'ouvrir le buffer
7 | Impossible d\'ouvrir le document
8 | Impossible d\'ouvrir le document : %1$s
9 | Impossible d\'ouvrir le fichier : %1$s
10 | Choisir la valeur
11 | Copié dans le presse-papier
12 | Copier
13 | copier le texte
14 | Copier le texte sur le presse-papier
15 | Supprimer
16 | Ignorer
17 | Des modifications ont été effectuées au document. Les sauvegarder ?
18 | Dessiner une note
19 | Éditer une note
20 | Introduire le mot de passe
21 | Entrer en mode refusion
22 | Remplir le champ du texte
23 | Format non compatible pour l\'instant
24 | Surligner
25 | Encre
26 | Quitter le mode refusion
27 | Plus
28 | Non
29 | Aucune occurrence trouvée
30 | Sauvegarder le support de stockage avec un PC peut le rendre inaccessible
31 | Support de stockage absent
32 | Aucun texte sélectionné
33 | Non compatible
34 | Rien à sauvegarder
35 | OK
36 | Table des matières
37 | [Niveau supérieur]
38 | %1$s%2$s : %3$s
39 | Imprimer
40 | L\'impression a échoué
41 | Sauvegarder
42 | Rechercher
43 | Rechercher en arrière
44 | Rechercher document
45 | Rechercher en avant
46 | Chercher… ;
47 | Sélectionner
48 | Sélectionner le texte
49 | Rayer
50 | Texte introuvable
51 | Surligner et autoriser les liens
52 | Souligner
53 | Oui
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-hi/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | स्वीकार करें
4 | MuPDF
5 | रद्द करें
6 | बफ़र खोल नहीं सके
7 | दस्तावेज़ खोल नहीं सके
8 | दस्तावेज़ नहीं खोल सके: %1$s
9 | फ़ाइल खोल नहीं सके: %1$s
10 | मान चुनें
11 | क्लिपबोर्ड में कॉप कर दिया गया
12 | कॉपी करें
13 | पाठ कॉपी करें
14 | पाठ को क्लिपबोर्ड में कॉपी करें
15 | हटाएँ
16 | खारिज करें
17 | दस्तावेज़ में परिवर्तन हैं। उन्हें सहेजें?
18 | एनोटेशन बनाएँ
19 | एनोटेशनों को संपादित करें
20 | पासवर्ड दर्ज करें
21 | रीफ़्लो मोड में प्रवेश कर रहे हैं
22 | पाठ फ़ील्ड को भरें
23 | इस समय इस फ़ॉर्मेट को समर्थन नहीं प्राप्त है
24 | हाइलाइट करें
25 | स्याही
26 | रीफ़्लो मोड को छोड़ रहे हैं
27 | और भी
28 | नहीं
29 | यह और कहीं नहीं मिला
30 | संग्रह माध्यम को पीसी के साथ साझा करने से उस तक पहुँचना मुश्किल हो सकता है
31 | संग्रह माध्यम मौजूद नहीं है
32 | कोई भी पाठ नहीं चुना गया है
33 | असमर्थित
34 | सहेजने के लिए कुछ नहीं है
35 | ठीक है
36 | विषय सूची
37 | [एक स्तर ऊपर]
38 | %1$s%2$s:%3$s
39 | मुद्रित करें
40 | मुद्रण विफल हुआ
41 | सहेजें
42 | खोजें
43 | पीछे की ओर खोजें
44 | दस्तावेज़ में खोजें
45 | आगे की ओर खोजें
46 | … को खोज रहे हैं;
47 | चुनें
48 | पाठ चुनें
49 | काटें
50 | पाठ नहीं मिला
51 | लिंकों को हाइलाइट और सक्षम करें
52 | रेखांकित करें
53 | हाँ
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-hu/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Elfogadás
4 | MuPDF
5 | Mégse
6 | A puffert nem lehet megnyitni
7 | A dokumentumot nem lehet megnyitni
8 | A dokumentumot nem lehet megnyitni: %1$s
9 | A fájlt nem lehet megnyitni: %1$s
10 | Érték kiválasztása
11 | A vágólapra másolva
12 | Másolás
13 | szöveg másolása
14 | Szöveg másolása a vágólapra
15 | Törlés
16 | Bezárás
17 | A dokumentum módosítva lett. Menti a változtatásokat?
18 | Jegyzet rajzolása
19 | Jegyzetek szerkesztése
20 | Jelszó megadása
21 | Belépés az újrarendezési módba
22 | Szövegmező kitöltése
23 | A formátum jelenleg nem támogatott
24 | Kiemelés
25 | Kézírás
26 | Kilépés az újrarendezési módból
27 | Több
28 | Nem
29 | Nincsenek további találatok
30 | Az adathordozó a PC-vel való megosztás esetén elérhetetlenné válhat
31 | Nincs jelen adathordozó
32 | Nincs kijelölt szöveg
33 | Nem támogatott
34 | Nem kell semmit menteni
35 | OK
36 | Tartalomjegyzék
37 | [Egy szinttel feljebb]
38 | %1$s %2$s: %3$s
39 | Nyomtatás
40 | Nyomtatás sikertelen
41 | Mentés
42 | Keresés
43 | Keresés visszafelé
44 | Dokumentum keresése
45 | Keresés előrefelé
46 | Keresés:…
47 | Kijelölés
48 | Szöveg kijelölése
49 | Áthúzás
50 | Szöveg nem található
51 | Kiemelés és linkek engedélyezése
52 | Aláhúzás
53 | Igen
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-in/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Terima
4 | MuPDF
5 | Batal
6 | Tidak bisa membuka penyangga
7 | Tidak bisa membuka dokumen
8 | Tidak bisa membuka dokumen: %1$s
9 | Tidak bisa membuka berkas: %1$s
10 | Pilih nilai
11 | Disalin ke papan klip
12 | Salin
13 | Salin teks
14 | Salin teks ke papan klip
15 | Hapus
16 | Hilangkan
17 | Dokumen telah berubah. Simpan perubahan?
18 | Gambar anotasi
19 | Sunting anotasi
20 | Masukkan kata sandi
21 | Masuk mode alir-ulang
22 | Isi bidang teks
23 | Format ini tidak didukung
24 | Sorotan
25 | Tinta
26 | Tinggalkan mode alir-ulang
27 | Selengkapnya
28 | Tidak
29 | Tidak ditemukan kejadian lain
30 | Berbagi media penyimpanan dengan PC dapat membuatnya tidak bisa diakses
31 | Media penyimpanan tidak ada
32 | Tidak ada teks yang dipilih
33 | Tidak didukung
34 | Tidak ada yang disimpan
35 | Oke
36 | Daftar Isi
37 | [Naik satu tingkat]
38 | %1$s %2$s: %3$s
39 | Cetak
40 | Pencetakan gagal
41 | Simpan
42 | Cari
43 | Cari mundur
44 | Cari dokumen
45 | Cari maju
46 | Mencari…
47 | Pilih
48 | Pilih teks
49 | Gagal
50 | Teks tidak ditemukan
51 | Sorot dan aktifkan tautan
52 | Garis bawah
53 | Ya
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-it/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Accetta
4 | MuPDF
5 | Annulla
6 | Impossibile aprire buffering
7 | Impossibile aprire documento
8 | Impossibile aprire documento: %1$s
9 | Impossibile aprire file: %1$s
10 | Scegli valore
11 | Copiato negli appunti
12 | Copia
13 | copia testo
14 | Copia testo negli appunti
15 | Elimina
16 | Ignora
17 | Il documento contiene modifiche. Salvare?
18 | Disegna annotazione
19 | Modifica annotazione
20 | Inserisci password
21 | Inserimento modalità di adattamento dinamico del contenuto
22 | Riempi il campo di testo
23 | Formato attualmente non supportato
24 | Evidenzia
25 | Inchiostro
26 | Abbandono della modalità di adattamento dinamico del contenuto
27 | Altro
28 | No
29 | Nessun\'altra occorrenza trovata
30 | La condivisione del supporto di archiviazione con un PC può renderlo inaccessibile
31 | Supporto di archiviazione non presente
32 | Nessun testo selezionato
33 | Non supportato
34 | Niente da salvare
35 | Ok
36 | Sommario
37 | [Su di un livello]
38 | %1$s %2$s: %3$s
39 | Stampa
40 | Stampa non riuscita
41 | Salva
42 | Cerca
43 | Cerca indietro
44 | Cerca documento
45 | Cerca avanti
46 | Ricerca...
47 | Seleziona
48 | Seleziona testo
49 | Barrato
50 | Testo non trovato
51 | Evidenzia e abilita link
52 | Sottolinea
53 | Sì
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-iw/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | קבל
4 | MuPDF
5 | בטל
6 | אין אפשרות לפתוח מאגר
7 | אין אפשרות לפתוח מסמך
8 | אין אפשרות לפתוח מסמך: %1$s
9 | אין אפשרות לפתוח קובץ: %1$s
10 | בחר ערך
11 | הועתק ללוח
12 | העתק
13 | העתק טקסט
14 | העתק טקסט ללוח
15 | מחק
16 | התעלם
17 | קיימים שינויים במסמך. לשמור אותם?
18 | רשום ביאור
19 | ערוך ביאורים
20 | הזן סיסמה
21 | כניסה למצב הזרמה מחדש
22 | מלא את שדה הטקסט
23 | תבנית לא נתמכת כעת
24 | הבלטה
25 | דיו
26 | יציאה ממצב הזרמה מחדש
27 | עוד
28 | לא
29 | לא עוד
30 | שיתוף מדיית האחסון עם מחשב עשויה להפוך אותה לבלתי נגישה
31 | מדיית אחסון לא קיימת
32 | לא נבחר טקסט
33 | לא נתמך
34 | אין מה לשמור
35 | בסדר
36 | תוכן העניינים
37 | [למעלה ברמה אחת]
38 | %1$s %2$s: %3$s
39 | הדפס
40 | ההדפסה נכשלה
41 | שמור
42 | חפש
43 | חפש אחורה
44 | חפש במסמך
45 | חפש קדימה
46 | מחפש…
47 | בחר ערך
48 | בחר טקסט
49 | הדגש
50 | לא נמצא טקסט
51 | הבלט ואפשר קישורים
52 | קו תחתון
53 | כן
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ja/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 承諾する
4 | MuPDF
5 | キャンセル
6 | バッファーを開けません
7 | ドキュメントを開けません
8 | 次のドキュメントを開けません:%1$s
9 | 次のファイルを開けません: %1$s
10 | バリューを選択してください
11 | クリップボードにコピーされました
12 | コピー
13 | テキストをコピー
14 | テキストをクリップボードにコピー
15 | 削除
16 | 却下
17 | ドキュメントは変更されました。保存しますか?
18 | 注釈を挿入する
19 | 注釈を編集する
20 | パスワードを入力する
21 | リフローモードを開始する
22 | テキストフィールドに書き込む
23 | このフォーマットは現在サポートされていません
24 | ハイライト
25 | インク
26 | リフローモードを終了する
27 | もっと
28 | いいえ
29 | 他にオカレンスは見つかりませんでした
30 | 記憶媒体をPCとシェアするとアクセスできなくなる可能性があります
31 | 記憶媒体が見つかりません
32 | テキストが選択されていません
33 | サポートされていません
34 | 保存するものがありません
35 | 了解
36 | 目次
37 | [一つ上位のレベル]
38 | %1$s %2$s: %3$s
39 | 印刷
40 | 印刷に失敗しました
41 | 保存
42 | 検索
43 | 逆方向検索
44 | ドキュメントを検索する
45 | 順方向検索
46 | 検索中
47 | 選択
48 | テキストを選択する
49 | 取り消し線を引く
50 | テキストが見つかりません
51 | ハイライトしてリンクを有効にする
52 | 下線を引く
53 | はい
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ko/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 수락
4 | MuPDF
5 | 취소
6 | 버퍼 열 수 없음
7 | 문서 열 수 없음
8 | 문서 열 수 없음: %1$s
9 | 파일 열 수 없음: %1$s
10 | 값 선택
11 | 클립보드로 복사됨
12 | 복사
13 | 텍스트 복사
14 | 클립보드로 텍스트 복사
15 | 삭제
16 | 무시
17 | 문서에 변경사항이 있습니다. 저장?
18 | 주석달기
19 | 주석 편집
20 | 패스워드 입력
21 | 리플로우 모드 시작
22 | 텍스트 입력란에 기입하십시오.
23 | 현재 지원되지 않는 포맷
24 | 주요기능
25 | 잉크
26 | 리플로우 모드 해제
27 | 기타
28 | 아니오
29 | 발견된 추가 발생 없음
30 | PC와 스토리지 미디어를 공유하면 액세스할 수 없습니다.
31 | 스토리지 미디어 없음
32 | 선택된 텍스트 없음
33 | 지원 안됨
34 | 저장 대상 없음
35 | 확인
36 | 목차
37 | [레벨 한 단계 상승]
38 | %1$s %2$s: %3$s
39 | 인쇄
40 | 인쇄 실패
41 | 저장
42 | 검색
43 | 뒤로 검색
44 | 문서 검색
45 | 앞으로 검색
46 | 검색 중…
47 | 선택
48 | 텍스트 선택
49 | 삭제
50 | 발견된 텍스트 없음
51 | 하이라이트 및 링크 활성화
52 | 밑줄
53 | 예
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-lt/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Priimti
4 | „MuPDF“
5 | Atšaukti
6 | Nepavyksta atverti buferinės atmintinės
7 | Nepavyksta atverti dokumento
8 | Nepavyksta atverti dokumento: %1$s
9 | Nepavyksta atverti failo: %1$s
10 | Pasirinkti vertę
11 | Nukopijuota į iškarpinę
12 | Kopijuoti
13 | kopijuoti tekstą
14 | Kopijuoti tekstą į iškarpinę
15 | Naikinti
16 | Atmesti
17 | Dokumente yra pakeitimų. Ar juos įrašyti?
18 | Braižyti anotaciją
19 | Redaguoti anotacijas
20 | Įvesti slaptažodį
21 | Pereinama į pertvarkymo režimą
22 | Užpildyti teksto lauką
23 | Formatas šiuo metu nedera
24 | Pažymėti
25 | Rašalas
26 | Išeinama iš pertvarkymo režimo
27 | Daugiau
28 | Ne
29 | Daugiau įrašų nerasta
30 | Pabendrinus laikmeną su kompiuteriu, ji gali tapti nebepasiekiama
31 | Laikmenos nėra
32 | Neparinktas tekstas
33 | Nedera
34 | Nėra ką įrašyti
35 | Gerai
36 | Turinys
37 | [Vienu lygiu aukštyn]
38 | %1$s %2$s: %3$s
39 | Spausdinti
40 | Išspausdinti nepavyko
41 | Įrašyti
42 | Ieškoti
43 | Ieškoti atgal
44 | Ieškoti dokumente
45 | Ieškoti pirmyn
46 | Ieškoma…
47 | Pasirinkti
48 | Pasirinkti tekstą
49 | Išbraukti
50 | Teksto nerasta
51 | Pažymėti ir įjungti nuorodas
52 | Pabraukti
53 | Taip
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ms/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Terima
4 | MuPDF
5 | Batal
6 | Tidak boleh membuka penimbal
7 | Tidak boleh membuka dokumen
8 | Tidak boleh membuka dokumen: %1$s
9 | Tidak boleh membuka fail: %1$s
10 | Pilih nilai
11 | Disalin ke papan klip
12 | Salin
13 | salin teks
14 | Salin teks ke papan klip
15 | Padam
16 | Singkir
17 | Dokumen mempunyai perubahan. Simpankannya?
18 | Lakarkan catatan
19 | Suntingkan catatan
20 | Masukkan kata laluan
21 | Memasuki mod penyusunan semula
22 | Mengisi medan teks
23 | Format buat masa ini tidak disokong
24 | Serlahkan
25 | Dakwat
26 | Meninggalkan mod penyusunan semula
27 | Lagi
28 | Tidak
29 | Tiada kejadian lanjut ditemui
30 | Berkongsi media storan dengan PC boleh menjadikannya tidak dapat dicapai
31 | Media storan tidak wujud
32 | Tiada teks dipilih
33 | Tidak disokong
34 | Tiada apa untuk disimpan
35 | Okey
36 | Jadual Kandungan
37 | [Naik satu tahap]
38 | %1$s %2$s: %3$s
39 | Cetak
40 | Gagal dicetak
41 | Simpan
42 | Carian
43 | Carian ke belakang
44 | Carian dokumen
45 | Carian ke depan
46 | Mencari…
47 | Pilih
48 | Pilih teks
49 | Mansuhkan
50 | Teks tidak ditemui
51 | Serlahkan dan dayakan pautan
52 | Gariskan
53 | Ya
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-nl/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Accepteren
4 | MuPDF
5 | Annuleren
6 | Buffer kan niet geopend worden
7 | Document kan niet geopend worden
8 | Document kan niet geopend worden: %1$s
9 | Bestand kan niet geopend worden : %1$s
10 | Kies waarde
11 | Gekopieerd naar klembord
12 | Kopiëren
13 | tekst kopiëren
14 | Tekst kopiëren naar klembord
15 | Verwijderen
16 | Afwijzen
17 | Het document is gewijzigd. Opslaan?
18 | Opmerking tekenen
19 | Opmerkingen bewerken
20 | Voer wachtwoord in
21 | Conversiemodus wordt geopend
22 | Vul het tekstveld in
23 | Formaat wordt momenteel niet ondersteund
24 | Markeren
25 | Inkten
26 | Conversiemodus wordt beëindigd
27 | Meer
28 | Nee
29 | Geen andere resultaten gevonden
30 | Het opslagmedium kan ontoegankelijk worden als het met een pc wordt gedeeld
31 | Geen opslagmedium aanwezig
32 | Geen tekst geselecteerd
33 | Niet ondersteund
34 | Niets om op te slaan
35 | Oké
36 | Inhoudsopgave
37 | [Een niveau hoger]
38 | %1$s %2$s: %3$s
39 | Afdrukken
40 | Afdrukken mislukt
41 | Opslaan
42 | Zoeken
43 | Achterstevoren zoeken
44 | Document doorzoeken
45 | Vooruit zoeken
46 | Aan het zoeken …
47 | Selecteren
48 | Tekst selecteren
49 | Doorhalen
50 | Tekst niet gevonden
51 | Markeren en koppelingen inschakelen
52 | Onderstrepen
53 | Ja
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-no/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Aksepter
4 | MuPDF
5 | Avbryt
6 | Kan ikke åpne buffer
7 | Kan ikke åpne dukumentet
8 | Kan ikke åpne dokumentet: %1$s
9 | Kan ikke åpne filen: %1$s
10 | Velg verdi
11 | Kopiert til utklippstavlen
12 | Kopier
13 | kopier tekst
14 | Kopier teksten til utklippstavlen
15 | Slett
16 | Avvis
17 | Det er endringer i dokumentet. Lagre dem?
18 | Lag merknad
19 | Rediger merknader
20 | Skriv inn passord
21 | Bytter til konverteringsmodus
22 | Fyll ut tekstfeltet
23 | Formatet er ikke støttet for øyeblikket
24 | Uthev
25 | Håndskrift
26 | Går ut av konverteringsmodus
27 | Mer
28 | Nei
29 | Ingen flere hendelser funnet
30 | Deling av lagringsmedia med en PC kan gjøre det utilgjengelig
31 | Lagringsmedia ikke til stede
32 | Ingen tekst er valgt
33 | Ikke støttet
34 | Ingenting å lagre
35 | Ok
36 | Innholdsfortegnelse
37 | [OPP ett nivå]
38 | %1$s%2$s%3$s
39 | Skriv ut
40 | Kunne ikke skrive ut
41 | Lagre
42 | Søk
43 | Søk bakover
44 | Søk i dokument
45 | Søk framover
46 | Søker…
47 | Velg
48 | Valgt tekst
49 | Gjennomstreking
50 | Teksten ble ikke funnet
51 | Uthev og aktiver koblinger
52 | Understrek
53 | Ja
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-pl/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Zaakceptuj
4 | MuPDF
5 | Anuluj
6 | Nie można otworzyć bufora
7 | Nie można otworzyć dokumentu
8 | Nie można otworzyć dokumentu: %1$s
9 | Nie można otworzyć pliku: %1$s
10 | Wybierz wartość
11 | Skopiowano do schowka
12 | Kopiuj
13 | kopiuj tekst
14 | Kopiuj tekst do schowka
15 | Usuń
16 | Odrzuć
17 | W dokumencie dokonano zmian. Czy chcesz je zapisać?
18 | Sporządź notatkę
19 | Edytuj notatki
20 | Wprowadź hasło
21 | Włączanie trybu zawijania tekstu
22 | Wypełnij pole tekstowe
23 | Format obecnie nieobsługiwany
24 | Podświetl
25 | Atrament
26 | Wyłączanie trybu zawijania tekstu
27 | Więcej
28 | Nie
29 | Nie znaleziono więcej wystąpień
30 | Współdzielenie nośnika danych z komputerem PC może sprawić, że będzie niedostępny
31 | Nośnik danych niedostępny
32 | Nie wybrano tekstu
33 | Nieobsługiwany
34 | Nie ma nic do zapisania
35 | OK
36 | Spis treści
37 | [W górę o jeden poziom]
38 | %1$s %2$s: %3$s
39 | Drukuj
40 | Drukowanie nieudane
41 | Zapisz
42 | Szukaj
43 | Szukaj z tyłu
44 | Szukaj w dokumencie
45 | Szukaj z przodu
46 | Wyszukiwanie…
47 | Wybierz
48 | Wybierz tekst
49 | Przekreślenie
50 | Nie znaleziono tekstu
51 | Podświetl i aktywuj linki
52 | Podkreślenie
53 | Tak
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-pt/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Aceitar
4 | MuPDF
5 | Cancelar
6 | Não é possível abrir a memória intermédia
7 | Não é possível abrir o documento
8 | Não é possível abrir o documento: %1$s
9 | Não é possível abrir o ficheiro: %1$s
10 | Escolha um valor
11 | Copiado para a área de transferência
12 | Copiar
13 | copiar o texto
14 | Copiar o texto para a área de transferência
15 | Eliminar
16 | Desistir
17 | Há alterações ao documento. Deseja guardá-las?
18 | Adicionar anotação
19 | Editar anotações
20 | Escrever a palavra-passe
21 | A entrar no modo de refluxo
22 | Preencher o campo de texto
23 | Esse formato não é atualmente suportado
24 | Destacar
25 | Tinta
26 | A sair do modo de refluxo
27 | Mais
28 | Não
29 | Não foram encontradas mais ocorrências
30 | Partilhar o dispositivo de armazenamento com um PC poderá torná-lo inacessível
31 | O dispositivo de armazenamento não está presente
32 | Não há texto selecionado
33 | Não suportado
34 | Não há nada para guardar
35 | Okay
36 | Índice
37 | [subir um nível]
38 | %1$s%2$s: %3$s
39 | Imprimir
40 | Falha na Impressão
41 | Guardar
42 | Pesquisar
43 | Pesquisar para trás
44 | Pesquisar no documento
45 | Pesquisar para a frente
46 | A pesquisar…
47 | Selecionar
48 | Selecionar o texto
49 | Rasurado
50 | Texto não encontrado
51 | Destacar e permitir links
52 | Sublinhado
53 | Sim
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-ru/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Принять
4 | MuPDF
5 | Отмена
6 | Невозможно открыть буфер
7 | Невозможно открыть документ
8 | Невозможно открыть документ: %1$s
9 | Невозможно открыть файл: %1$s
10 | Выберите значение
11 | Скопировано в буфер
12 | Копировать
13 | копировать текст
14 | Копировать текст в буфер
15 | Удалить
16 | Пропустить
17 | Документ был изменен. Сохранить изменения?
18 | Создать аннтоацию
19 | Редактировать аннотации
20 | Введите пароль
21 | Переход в режим Reflow
22 | Заполните текстовое поле
23 | Формат не поддерживается
24 | Выделить
25 | Чернила
26 | Выход из режима Reflow
27 | Еще
28 | Нет
29 | Других ошибок не зафиксировано
30 | Подключение компьютеров к хранилищу данных может привести к потере доступа к хранилищу
31 | Хранилище данных отсутствует
32 | Текст не выбран
33 | Не поддерживается
34 | Не выбраны файлы для сохранения
35 | ОК
36 | Содержание
37 | [Вверх на один уровень]
38 | %1$s %2$s: %3$s
39 | Печать
40 | Печать не выполнена
41 | Сохранить
42 | Поиск
43 | Искать в предыдущей части документа
44 | Искать в документе
45 | Искать в остальной части документа
46 | Поиск…
47 | Выбор
48 | Выбрать текст
49 | Зачеркнуть
50 | Текст не найден
51 | Выделить и включить ссылки
52 | Подчеркнуть
53 | Да
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-sk/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Prijať
4 | MuPDF
5 | Zrušiť
6 | Buffer sa nedá otvoriť
7 | Dokument sa nedá otvoriť
8 | Nedá sa otvoriť dokument: %1$s
9 | Nedá sa otvoriť súbor: %1$s
10 | Vyberte si hodnotu
11 | Skopírované do vyrovnávacej pamäti
12 | Kopírovať
13 | kopírovať text
14 | Kopírovať text do vyrovnávacej pamäti
15 | Zmazať
16 | Zrušiť
17 | Dokument bol zmený. Uložiť zmeny?
18 | Zostaviť anotáciu
19 | Upraviť anotácie
20 | Zadať heslo
21 | Vstupujem do režimu opätovného nalievania
22 | Vyplniť textové pole
23 | Tento formát momentálne nepodporujem
24 | Zvýrazniť
25 | Atrament
26 | Vystupujem z režimu opätovného nalievania
27 | Viac
28 | Nie
29 | Viac príkladov sa nenašlo
30 | Zdieľanie úložného média s PC môže znemožniť prístup
31 | Nie je tu úložné médium
32 | Žiadny text nie je vybraný
33 | Nepodporované
34 | Niet čo uložiť
35 | Dobre
36 | Obsah
37 | [O úroveň vyššie]
38 | %1$s %2$s: %3$s
39 | Tlačiť
40 | Tlačenie zlyhalo
41 | Uložiť
42 | Hľadať
43 | Hľadať spätne
44 | Hľadať v dokumente
45 | Hľadať dopredu
46 | Hľadám…
47 | Vybrať
48 | Vybrať text
49 | Preškrtnúť
50 | Text sa nenašiel
51 | Zvýrazniť a zapnúť linky
52 | Podčiarknúť
53 | Áno
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-sv/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Acceptera
4 | MuPDF
5 | Avbryt
6 | Kan inte öppna buffer
7 | Kan inte öppna dokument
8 | Kan inte öppna dokument: %1$s
9 | Kan inte öppna fil: %1$s
10 | Välj värde
11 | Kopierat till klippbordet
12 | Kopiera
13 | kopiera text
14 | Kopiera text till klippbordet
15 | Ta bort
16 | Avfärda
17 | Dokumentet har ändrats. Spara ändringar?
18 | Rita annotation
19 | Ändra annotation
20 | Fyll i lösenord
21 | Aktiverar reflow-läge
22 | Fyll i textfält
23 | Formatat stöds inte för närvarande
24 | Markera
25 | Bläck
26 | Lämnar reflow-läge
27 | Mer
28 | Nej
29 | Inga flera förekomster hittades
30 | Att dela lagringsmediet med en PC kan göra den oåtkomlig
31 | Lagringsmedia finns inte
32 | Ingen text har valts
33 | Stöds ej
34 | Inget att spara
35 | OK
36 | Innehållsförteckning
37 | [Upp en nivå]
38 | %1$s %2$s: %3$s
39 | Skriv ut
40 | Utskrift misslyckades
41 | Spara
42 | Sök
43 | Sök bakåt
44 | Sök dokument
45 | Sök framåt
46 | Letar…
47 | Välj
48 | Välj text
49 | Stryk
50 | Text hittades ej
51 | Markera och aktivera länkar
52 | Understryk
53 | Ja
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-th/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | ยอมรับ
4 | MuPDF
5 | ยกเลิก
6 | ไม่สามารถเปิดบัฟเฟอร์
7 | ไม่สามารถเปิดเอกสาร
8 | ไม่สามารถเปิดเอกสาร: %1$s
9 | ไม่สามารถเปิดไฟล์: %1$s
10 | เลือกค่า
11 | คัดลอกไปที่คลิปบอร์ดแล้ว
12 | คัดลอก
13 | คัดลอกข้อความ
14 | คัดลอกข้อความไปที่คลิปบอร์ด
15 | ลบ
16 | เลิกใช้
17 | เอกสารมีการเปลี่ยนแปลง ต้องการบันทึกหรือไม่
18 | เขียนคำอธิบายประกอบ
19 | แก้ไขคำอธิบายประกอบ
20 | ป้อนรหัสผ่าน
21 | เข้าสู่โหมดเรียงหน้ากระดาษใหม่
22 | เติมในช่องข้อความ
23 | ไม่รองรับรูปแบบในขณะนี้
24 | ไฮไลท์
25 | หมึก
26 | ออกจากโหมดเรียงหน้ากระดาษใหม่
27 | เพิ่มเติม
28 | ไม่
29 | ไม่พบเหตุการณ์ที่เกิดขึ้นเพิ่มเติม
30 | การแบ่งปันสื่อจัดเก็บข้อมูลกับพีซีสามารถทำให้สื่อจัดเก็บข้อมูลไม่สามารถเข้าถึงได้
31 | สื่อเก็บข้อมูลไม่ปรากฏ
32 | ไม่มีข้อความที่เลือก
33 | ไม่รองรับ
34 | ไม่มีอะไรให้บันทึก
35 | ตกลง
36 | สารบัญ
37 | [ขึ้นหนึ่งระดับ]
38 | %1$s %2$s: %3$s
39 | พิมพ์
40 | พิมพ์ล้มเหลว
41 | บันทึก
42 | ค้นหา
43 | ค้นหาย้อนกลับ
44 | ค้นหาเอกสาร
45 | ค้นหาไปข้างหน้า
46 | กำลังค้นหา…
47 | เลือก
48 | เลือกข้อความ
49 | ขีดทับ
50 | ไม่พบข้อความ
51 | ไฮไลท์และเปิดใช้งานลิงก์
52 | ขีดเส้นใต้
53 | ใช่
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-tl/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Tanggapin
4 | MuPDF
5 | Kanselahin
6 | Hindi mabuksan ang buffer
7 | Hindi mabuksan ang dokumento
8 | Hindi mabuksan ang dokumentong: %1$s
9 | Hindi mabuksan ang file na: %1$s
10 | Pumili ng halaga
11 | Kinopya sa clipboard
12 | Kopyahin
13 | kopyahin ang teksto
14 | Kopyahin ang teksto sa clipboard
15 | Alisin
16 | Umalis
17 | May mga pagbabago sa dokumento. I-save ang mga ito?
18 | Gumuhit ng anotasyon
19 | I-edit ang mga anotasyon
20 | Ilagay ang password
21 | Pumapasok sa reflow mode
22 | Punan ang puwang para sa teksto
23 | Ang format ay kasalukuyang hindi gumagana dito
24 | I-highlight
25 | Lagdaan (Ink)
26 | Umaalis sa reflow mode
27 | Higit pa
28 | Hindi
29 | Walang nahanap na karagdagang paglitaw
30 | Ang pagbabahagi ng storage media sa isang PC ay gagawin itong hindi magagamit
31 | Walang storage media
32 | Walang piniling teksto
33 | Hindi gumagana dito
34 | Walang ise-save
35 | Okay
36 | Talaan ng Nilalaman
37 | [Umakyat ng isang antas]
38 | %1$s %2$s: %3$s
39 | I-print
40 | Hindi nai-print
41 | I-save
42 | Maghanap
43 | Maghanap pabalik
44 | Maghanap sa dokumento
45 | Maghanap nang pasulong
46 | Hinahanap ang…
47 | Piliin
48 | Piliin ang teksto
49 | Guhitan ang teksto (strike-out)
50 | Hindi nahanap ang teksto
51 | I-highlight at paganahin ang mga link
52 | Guhitan
53 | Oo
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-tr/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Kabul et
4 | MuPDF
5 | İptal et
6 | Arabellek açılamıyor
7 | Belge açılamıyor
8 | Belge açılamıyor: %1$s
9 | Dosya açılamıyor: %1$s
10 | Değeri seç
11 | Panoya kopyalandı
12 | Kopyala
13 | metni kopyala
14 | Metni panoya kopyala
15 | Sil
16 | Bırak
17 | Belgede değişiklikler var. Kaydetmek istiyor musunuz?
18 | Ek açıklama çiz
19 | Ek açıklamalar düzenle
20 | Şifreyi gir
21 | Yeniden akma moduna giriyor
22 | Metin alanını doldurun
23 | Bu format şu an için desteklenmiyor
24 | Vurgula
25 | Mürekkep
26 | Yeniden akma modundan çıkılıyor
27 | Daha fazla
28 | Hayır
29 | Daha fazla öğe bulunamadı
30 | Depolama ortamının bilgisayar ile paylaşımı onu erişilmez yapabilir
31 | Depolama ortamı bulunmuyor
32 | Seçili metin bulunmuyor
33 | Desteklenmiyor
34 | Kaydedecek bir şey yok
35 | Tamam
36 | İçindekiler Tablosu
37 | [Bir seviye üste çık]
38 | %1$s %2$s: %3$s
39 | Yazdır
40 | Yazdırma başarısız oldu
41 | Kaydet
42 | Ara
43 | Geriye doğru ara
44 | Belge ara
45 | İleriye doğru ara
46 | Aranıyor…
47 | Seç
48 | Metin seç
49 | Üstünü çiz
50 | Metin bulunamadı
51 | Bağlantıları vurgula ve etkinleştir
52 | Altını çiz
53 | Evet
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-zh-rTW/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 同意
4 | MuPDF
5 | 取消
6 | 未能開啟緩衝
7 | 未能開啟文件
8 | 未能開啟文件: %1$s
9 | 未能開啟檔案%1$s
10 | 選擇數值
11 | 複製至剪貼簿
12 | 複製
13 | 複製文字
14 | 複製文字至剪貼簿
15 | 刪除
16 | 取消
17 | 你需要儲存已編輯的文件嗎?
18 | 繪畫註釋
19 | 編輯註釋
20 | 輸入密碼
21 | 根據螢幕大小顯示
22 | 填寫文字欄
23 | 暫時不支援此格式
24 | 標示重點
25 | 墨水
26 | 不根據螢幕大小顯示
27 | 更多
28 | 沒有
29 | 沒有相符項目
30 | 未能與電腦分享存放裝置
31 | 沒有存放裝置
32 | 沒有選擇文字
33 | 不支援
34 | 沒有資料儲存
35 | 完成
36 | 目錄
37 | [升一級]
38 | %1$s%2$s%3$s
39 | 列印
40 | 列印失敗
41 | 儲存
42 | 搜尋
43 | 往後搜尋
44 | 搜尋文件
45 | 往前搜尋
46 | 搜尋中…
47 | 選擇
48 | 選擇文字
49 | 刪除線
50 | 未能找到文字
51 | 標示及允許連結
52 | 在下面劃線
53 | 是
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values-zh/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 接受
4 | MuPDF
5 | 取消
6 | 无法打开缓冲器
7 | 无法打开文档
8 | 无法打开文档: %1$s
9 | 无法打开文件:%1$s
10 | 选择值
11 | 已复制到剪贴板
12 | 复制
13 | 复制文本
14 | 将文本复制到剪贴板
15 | 删除
16 | 解除
17 | 文档已变更,保存变更吗?
18 | 作批注
19 | 编辑批注
20 | 输入密码
21 | 输入重排模式
22 | 填充文本字段
23 | 当前不支持此格式
24 | 高亮
25 | 墨迹
26 | 正在离开重排模式
27 | 更多
28 | 否
29 | 未发现更多实例。
30 | 存储介质在设备和 PC 上共同使用,会导致该存储介质在设备上无法被访问
31 | 没有存储介质
32 | 未选择文本
33 | 不被支持
34 | 没有要保存的内容
35 | 确定
36 | 目录
37 | [向上一级]
38 | %1$s%2$s:%3$s
39 | 打印
40 | 未能打印
41 | 保存
42 | 搜索
43 | 向后搜索
44 | 搜索文档
45 | 向前搜索
46 | 正在搜索…
47 | 选择
48 | 选择文本
49 | 删除线
50 | 未发现文本
51 | 高亮并启用墨迹
52 | 下划线
53 | 是
54 |
55 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #404040
4 | #C0000000
5 | #C0202020
6 | #C0202020
7 | #00000000
8 | #FF2572AC
9 | #FFFFFF
10 | #FFFFFF
11 | #000000
12 | #2572AC
13 | #000000
14 | #2572AC
15 | #FFFFFF
16 |
17 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | MuPDF
4 | 1.6 (git build)
5 | Storage media not present
6 | Sharing the storage media with a PC can make it inaccessible
7 | Cancel
8 | Search backwards
9 | Search forwards
10 | Search document
11 | %1$s %2$s: %3$s
12 | Table of Contents
13 | Enter password
14 | Text not found
15 | Searching…
16 | Highlight and enable links
17 | No further occurrences found
18 | Select
19 | Search
20 | Copy
21 | Strike-out
22 | Delete
23 | Highlight
24 | Underline
25 | Edit annotations
26 | Ink
27 | Save
28 | Print
29 | Dismiss
30 | [Up one level]
31 | Yes
32 | No
33 | Entering reflow mode
34 | Leaving reflow mode
35 | Print failed
36 | Select text
37 | Copied to clipboard
38 | No text selected
39 | Draw annotation
40 | Nothing to save
41 | Document has changes. Save them?
42 | Cannot open document
43 | Cannot open document: %1$s
44 | Cannot open file: %1$s
45 | Cannot open buffer
46 | Fill out text field
47 | Okay
48 | Choose value
49 | Not supported
50 | Copy text to the clipboard
51 | More
52 | Accept
53 | copy text
54 | Format currently not supported
55 | Toggle reflow mode
56 |
57 | Unable to open the document
58 | Double-tap where you want to place your signature
59 | Warning
60 | The document has not been signed. Please, double-tap where you want to place your signature
61 | Ok
62 |
63 |
--------------------------------------------------------------------------------
/MuPDFDemo/mupdf-android-master/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/MuPDFDemo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app', ':mupdf-android-master'
2 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # MuPDFDemo-Java
2 | Demo app to show how to use MuPDF Library for Android.
3 |
4 | # Introduction:
5 | MuPDF is a lightweight PDF and XPS viewer for Android and iOS. There are many other libraries that provide PDF support but MuPDF is by far the best that we have used.
6 |
7 |
8 | # Showing PDF:
9 | With this method you can choose how to show the PDF file.
10 | ```ruby
11 |
12 | private void displayPDF(String path) throws Exception {
13 | /*Reading file from URI*/
14 | byte buffer[] = null;
15 | Uri uri = Uri.parse(path);
16 | try {
17 | InputStream is = getContentResolver().openInputStream(uri);
18 | int len = is.available();
19 | buffer = new byte[len];
20 | is.read(buffer, 0, len);
21 | is.close();
22 | } catch (OutOfMemoryError e) {
23 | System.out.println("Out of memory during buffer reading");
24 | } catch (Exception e) {
25 | System.out.println("Exception reading from stream: " + e);
26 | try {
27 | Cursor cursor = getContentResolver().query(uri, new String[]{"_data"}, null, null, null);
28 | if (cursor.moveToFirst()) {
29 | String str = cursor.getString(0);
30 | if (str == null) {
31 | } else {
32 | uri = Uri.parse(str);
33 | }
34 | }
35 | } catch (Exception e2) {
36 | System.out.println("Exception in Transformer Prime file manager code: " + e2);
37 | }
38 | }
39 | MuPDFCore core = new MuPDFCore(getApplicationContext(), buffer, null);
40 | MuPDFReaderView mDocView = new MuPDFReaderView(getApplicationContext());
41 | mDocView.setAdapter(new MuPDFPageAdapter(getApplicationContext(), null, core));
42 | pdfViewRL.addView(mDocView, new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
43 |
44 | /*Use this if you want to open PDF outside app using MuPDF's own Activity*/
45 |
46 | /*Intent intent = new Intent(getApplicationContext(), MuPDFActivity.class);
47 | intent.setAction(Intent.ACTION_VIEW);
48 | intent.setData(Uri.parse(path));
49 | startActivity(intent);*/
50 |
51 | }
52 |
53 |
--------------------------------------------------------------------------------