Skip to content

Commit 58b575f

Browse files
expose pdf2htmlEX.setOuline(boolean) in java
1 parent ff6d9a5 commit 58b575f

2 files changed

Lines changed: 12 additions & 4 deletions

File tree

pdf2htmlEX/src/main/cpp/pdf2htmlEX.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,9 @@ Java_com_viliussutkus89_android_pdf2htmlex_pdf2htmlEX_call_1pdf2htmlEX(JNIEnv *e
7070
jstring inputFile_,
7171
jstring outputFile_,
7272
jstring ownerPassword_,
73-
jstring userPassword_) {
73+
jstring userPassword_,
74+
jboolean enableOutline
75+
) {
7476
CCharGC dataDir(env, dataDir_);
7577
CCharGC popplerDir(env, popplerDir_);
7678
CCharGC tmpDir(env, tmpDir_);
@@ -80,7 +82,7 @@ Java_com_viliussutkus89_android_pdf2htmlex_pdf2htmlEX_call_1pdf2htmlEX(JNIEnv *e
8082
CCharGC userPassword(env, userPassword_);
8183

8284
pdf2htmlEX::pdf2htmlEX converter;
83-
converter.setProcessOutline(false);
85+
converter.setProcessOutline(enableOutline == JNI_TRUE);
8486
converter.setDataDir(dataDir.c_str());
8587
converter.setPopplerDataDir(popplerDir.c_str());
8688
converter.setTMPDir(tmpDir.c_str());

pdf2htmlEX/src/main/java/com/viliussutkus89/android/pdf2htmlex/pdf2htmlEX.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ public final class pdf2htmlEX {
4242
private File p_inputPDF;
4343
private String p_ownerPassword = "";
4444
private String p_userPassword = "";
45+
private boolean p_outline = true;
4546

4647
public static class ConversionFailedException extends Exception {
4748
public ConversionFailedException(String errorMessage) {
@@ -128,6 +129,11 @@ public pdf2htmlEX setUserPassword(@NonNull String userPassword) {
128129
return this;
129130
}
130131

132+
public pdf2htmlEX setOutline(@NonNull boolean enableOutline) {
133+
this.p_outline = enableOutline;
134+
return this;
135+
}
136+
131137
/*
132138
* @deprecated pdf2htmlEX-Android doesn't fork anymore
133139
*/
@@ -156,7 +162,7 @@ public File convert() throws IOException, ConversionFailedException {
156162
Integer retVal = call_pdf2htmlEX(m_pdf2htmlEX_dataDir.getAbsolutePath(),
157163
m_poppler_dataDir.getAbsolutePath(), m_pdf2htmlEX_tmpDir.getAbsolutePath(),
158164
this.p_inputPDF.getAbsolutePath(), outputHtml.getAbsolutePath(),
159-
this.p_ownerPassword, this.p_userPassword
165+
this.p_ownerPassword, this.p_userPassword, this.p_outline
160166
);
161167

162168
// retVal values defined in pdf2htmlEX.cc
@@ -177,7 +183,7 @@ public File convert() throws IOException, ConversionFailedException {
177183
return outputHtml;
178184
}
179185

180-
private native int call_pdf2htmlEX(String dataDir, String popplerDir, String tmpDir, String inputFile, String outputFile, String ownerPassword, String userPassword);
186+
private native int call_pdf2htmlEX(String dataDir, String popplerDir, String tmpDir, String inputFile, String outputFile, String ownerPassword, String userPassword, boolean outline);
181187

182188
// Because Java cannot setenv for the current process
183189
static native void set_environment_value(String key, String value);

0 commit comments

Comments
 (0)