|
@@ -92,10 +92,6 @@ ComPDFKit for React Native is a commercial SDK, which requires a license to gran
|
|
|
|
|
|
**Online License:** We have introduced an online license mechanism for enhanced license management. Through the online approach, you can manage and update your license more flexibly to meet the specific requirements of your project.
|
|
|
|
|
|
-To initialize ComPDFKit using a license key, call either of the following before using any other ComPDFKit APIs or features:
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
# 2 Get Started
|
|
|
|
|
|
It's easy to embed ComPDFKit into React Native applications with a few lines of code. Let's take a few minutes to get started.
|
|
@@ -193,11 +189,13 @@ dependencies {
|
|
|
}
|
|
|
```
|
|
|
|
|
|
-open `android/app/src/main/AndroidManifest.xml` , add `Storage Permission`:
|
|
|
+open `android/app/src/main/AndroidManifest.xml` , add `Internet Permission` and `Storage Permission`:
|
|
|
|
|
|
```diff
|
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
|
package="com.compdfkit.flutter.example">
|
|
|
+
|
|
|
++ <uses-permission android:name="android.permission.INTERNET"/>
|
|
|
|
|
|
<!-- Required to read and write documents from device storage -->
|
|
|
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
|
@@ -207,7 +205,7 @@ open `android/app/src/main/AndroidManifest.xml` , add `Storage Permission`:
|
|
|
<application
|
|
|
+ android:requestLegacyExternalStorage="true"
|
|
|
...>
|
|
|
- ...
|
|
|
+ ...
|
|
|
</application>
|
|
|
</manifest>
|
|
|
```
|
|
@@ -292,6 +290,8 @@ Go to the `compdfkit_rn/ios` folder and run the `pod install` command:
|
|
|
pod install
|
|
|
```
|
|
|
|
|
|
+**Note:** If SSL network requests fail to download the `ComPDFKit` library when you run `pod install`, you can see the processing method in [2.5 Troubleshooting](#2.5 Troubleshooting).
|
|
|
+
|
|
|
Open your project’s Workspace in Xcode:
|
|
|
|
|
|
```bash
|
|
@@ -330,13 +330,17 @@ To protect user privacy, before accessing the sensitive privacy data, you need t
|
|
|
|
|
|
<key>NSPhotoLibraryUsageDescription</key>
|
|
|
<string>Your consent is required before you could access the function.</string>
|
|
|
+
|
|
|
+<key>NSAppTransportSecurity</key>
|
|
|
+ <dict>
|
|
|
+ <key>NSAllowsArbitraryLoads</key>
|
|
|
+ <true/>
|
|
|
+ </dict>
|
|
|
```
|
|
|
|
|
|
-
|
|
|
-
|
|
|
## 2.3 Apply the License Key
|
|
|
|
|
|
-ComPDFKit for React Native is a commercial SDK, which requires a license to grant developer permission to release their apps. Each license is only valid for one `bundle ID` or `applicationId` in development mode. Other flexible licensing options are also supported, please contact [our marketing team](mailto:support@compdf.com) to know more.
|
|
|
+ComPDFKit for React Native is a commercial SDK, which requires a license to grant developer permission to release their apps. Each license is only valid for one `bundle ID` or `applicationId` in development mode. Other flexible licensing options are also supported, please contact [our marketing team](mailto:support@compdf.com) to know more.
|
|
|
|
|
|
To initialize ComPDFKit using a license key, call either of the following before using any other ComPDFKit APIs or features:
|
|
|
|
|
@@ -348,6 +352,7 @@ export default class App extends Component<Props> {
|
|
|
...
|
|
|
|
|
|
componentDidMount(){
|
|
|
+ // Fill in your online license
|
|
|
NativeModules.OpenPDFModule.initialize('your android platform compdfkit license', 'your ios platform compdfkit license')
|
|
|
}
|
|
|
// ...
|
|
@@ -362,17 +367,16 @@ export default class App extends Component<Props> {
|
|
|
...
|
|
|
|
|
|
componentDidMount(){
|
|
|
- NativeModules.OpenPDFModule.init('your compdfkit license')
|
|
|
+ // Fill in your offline license
|
|
|
+ NativeModules.OpenPDFModule.init_('your compdfkit license')
|
|
|
}
|
|
|
// ...
|
|
|
}
|
|
|
```
|
|
|
|
|
|
-
|
|
|
-
|
|
|
## 2.4 Run Project
|
|
|
|
|
|
-1. Create an `assets` directory in the project's root directory and copy the **[configuration.json](./assets/configuration.json)** file from the demo to this directory.
|
|
|
+1. Create an `assets` directory in the project's root directory and copy the **configuration.json** file from the demo to this directory.
|
|
|
|
|
|
<img src="./Image/2-3-1.png" alt="2-3-1" style="zoom:33%;" />
|
|
|
|
|
@@ -418,12 +422,12 @@ const instructions = Platform.select({
|
|
|
type Props = {};
|
|
|
export default class App extends Component<Props> {
|
|
|
|
|
|
- componentDidMount(){
|
|
|
- // Fill in your offline license
|
|
|
- NativeModules.OpenPDFModule.initialize('your android platform compdfkit license', 'your ios platform compdfkit license')
|
|
|
-
|
|
|
+ componentDidMount(){
|
|
|
// Fill in your online license
|
|
|
- // NativeModules.OpenPDFModule.init('your compdfkit license')
|
|
|
+ NativeModules.OpenPDFModule.initialize('your android platform compdfkit license', 'your ios platform compdfkit license')
|
|
|
+
|
|
|
+ // Fill in your offline license
|
|
|
+ // NativeModules.OpenPDFModule.init_('your compdfkit license')
|
|
|
}
|
|
|
|
|
|
render() {
|
|
@@ -509,8 +513,6 @@ npx react-native run-android
|
|
|
npx react-native run-ios
|
|
|
```
|
|
|
|
|
|
-
|
|
|
-
|
|
|
We have provided two quick ways to open PDFs:
|
|
|
|
|
|
- Open the document in the specified path
|
|
@@ -526,11 +528,59 @@ NativeModules.OpenPDFModule.openPDFByConfiguration(String filePath, String passw
|
|
|
NativeModules.OpenPDFModule.openPDFByUri(String uriString, String password, String configuration)
|
|
|
```
|
|
|
|
|
|
+## 2.5 Troubleshooting
|
|
|
+
|
|
|
+1.SSL network request to download 'ComPDFKit' library failed when cocopods downloaded iOS third-party library
|
|
|
+
|
|
|
+If SSL network requests fail to download the `ComPDFKit` library when you run `pod install`, replace the third-party platform download address link of the ComPDFKit library and execute `pod install`
|
|
|
+
|
|
|
+```diff
|
|
|
+require_relative '../node_modules/react-native/scripts/react_native_pods'
|
|
|
+require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
|
|
|
+
|
|
|
+- platform :ios, '10.0'
|
|
|
++ platform :ios, '11.0'
|
|
|
+install! 'cocoapods', :deterministic_uuids => false
|
|
|
+
|
|
|
+target 'PDFView_RN' do
|
|
|
+ config = use_native_modules!
|
|
|
|
|
|
+ # Flags change depending on the env values.
|
|
|
+ flags = get_default_flags()
|
|
|
+
|
|
|
+ use_react_native!(
|
|
|
+ :path => config[:reactNativePath],
|
|
|
+ # to enable hermes on iOS, change `false` to `true` and then install pods
|
|
|
+ :hermes_enabled => flags[:hermes_enabled],
|
|
|
+ :fabric_enabled => flags[:fabric_enabled],
|
|
|
+ # An absolute path to your application root.
|
|
|
+ :app_path => "#{Pod::Config.instance.installation_root}/.."
|
|
|
+ )
|
|
|
+
|
|
|
+ target 'PDFView_RNTests' do
|
|
|
+ inherit! :complete
|
|
|
+ # Pods for testing
|
|
|
+ end
|
|
|
+
|
|
|
++ pod 'ComPDFKit', :git => 'https://github.com/ComPDFKit/compdfkit-pdf-sdk-ios-swift.git', :tag => '1.13.0'
|
|
|
++ pod 'ComPDFKit_Tools', :git => 'https://github.com/ComPDFKit/compdfkit-pdf-sdk-ios-swift.git', :tag => '1.13.0'
|
|
|
+
|
|
|
+ # Enables Flipper.
|
|
|
+ #
|
|
|
+ # Note that if you have use_frameworks! enabled, Flipper will not work and
|
|
|
+ # you should disable the next line.
|
|
|
+ use_flipper!()
|
|
|
+
|
|
|
+ post_install do |installer|
|
|
|
+ react_native_post_install(installer)
|
|
|
+ __apply_Xcode_12_5_M1_post_install_workaround(installer)
|
|
|
+ end
|
|
|
+end
|
|
|
+```
|
|
|
|
|
|
# 3 UI Customization
|
|
|
|
|
|
-In version **1.12.0**, we have expanded the options defined in the **[configuration.json](./assets/configuration.json)**. When using the `NativeModules.OpenPDFModule.openPDFByConfiguration` method to open a PDF view, you can define the JSON content to meet your product requirements. We will continue to enrich the configuration options in the future to further enhance the flexibility of the product. Here are some examples of commonly used configuration options:
|
|
|
+In version **1.12.0**, we have expanded the options defined in the **configuration.json**. When using the `NativeModules.OpenPDFModule.openPDFByConfiguration` method to open a PDF view, you can define the JSON content to meet your product requirements. We will continue to enrich the configuration options in the future to further enhance the flexibility of the product. Here are some examples of commonly used configuration options:
|
|
|
|
|
|
The following only shows the key parts of the example. Please pass in the complete json content when using it.
|
|
|
|
|
@@ -588,268 +638,266 @@ The following only shows the key parts of the example. Please pass in the comple
|
|
|
The following is the complete [configuration](./assets/configuration.json) content with data description:
|
|
|
|
|
|
```json
|
|
|
-{
|
|
|
- "modeConfig": {
|
|
|
- "initialViewMode": "viewer", // When initializing the display mode, nsure that the selected mode exists in the availableViewModes. Otherwise, it will default to the viewer mode. Refer to the availableViewModes field for valid values.
|
|
|
- "availableViewModes": [ // Only modes listed in the mode list will be displayed.
|
|
|
- "viewer",
|
|
|
- "annotations",
|
|
|
- "contentEditor",
|
|
|
- "forms",
|
|
|
- "signatures"
|
|
|
- ]
|
|
|
- },
|
|
|
- "toolbarConfig": { // Top Toolbar Configuration
|
|
|
- "androidAvailableActions": [
|
|
|
- "thumbnail",
|
|
|
- "search",
|
|
|
- "bota",
|
|
|
- "menu"
|
|
|
- ],
|
|
|
- "iosLeftBarAvailableActions": [
|
|
|
- "back",
|
|
|
- "thumbnail"
|
|
|
- ],
|
|
|
- "iosRightBarAvailableActions": [
|
|
|
- "search",
|
|
|
- "bota",
|
|
|
- "menu"
|
|
|
- ],
|
|
|
- "availableMenus": [
|
|
|
- "viewSettings",
|
|
|
- "documentEditor",
|
|
|
- "documentInfo",
|
|
|
- "watermark",
|
|
|
- "security",
|
|
|
- "flattened",
|
|
|
- "save",
|
|
|
- "share",
|
|
|
- "openDocument"
|
|
|
- ]
|
|
|
- },
|
|
|
- "annotationsConfig": { // Annotation Feature Configuration
|
|
|
- "availableTypes": [ // List of enabled annotation types for the bottom annotation functionality
|
|
|
- "note",
|
|
|
- "highlight",
|
|
|
- "underline",
|
|
|
- "squiggly",
|
|
|
- "strikeout",
|
|
|
- "ink",
|
|
|
- "pencil", // only ios platform
|
|
|
- "circle",
|
|
|
- "square",
|
|
|
- "arrow",
|
|
|
- "line",
|
|
|
- "freetext",
|
|
|
- "signature",
|
|
|
- "stamp",
|
|
|
- "pictures",
|
|
|
- "link",
|
|
|
- "sound"
|
|
|
- ],
|
|
|
- "availableTools": [ // Annotation tools enabled for the bottom annotation functionality
|
|
|
- "setting",
|
|
|
- "undo",
|
|
|
- "redo"
|
|
|
- ],
|
|
|
- "initAttribute": { // Default properties for annotations upon initialization, influencing attributes such as color, transparency, etc., when adding annotations.
|
|
|
- "note": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 255 // Color transparency 0~255
|
|
|
- },
|
|
|
- "highlight": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 77
|
|
|
- },
|
|
|
- "underline": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 77
|
|
|
- },
|
|
|
- "squiggly": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 77
|
|
|
- },
|
|
|
- "strikeout": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 77
|
|
|
- },
|
|
|
- "ink": {
|
|
|
- "color": "#1460F3",
|
|
|
- "alpha": 100,
|
|
|
- "borderWidth": 10
|
|
|
- },
|
|
|
- "square": {
|
|
|
- "fillColor": "#1460F3",
|
|
|
- "borderColor": "#000000",
|
|
|
- "colorAlpha" : 128,
|
|
|
- "borderWidth": 2,
|
|
|
- "borderStyle": {
|
|
|
- "style": "solid", // Border line styles: solid, dashed
|
|
|
- "dashGap": 0.0 // Dashed line interval length, applicable only when the style is set to 'dashed'.
|
|
|
- }
|
|
|
- },
|
|
|
- "circle": {
|
|
|
- "fillColor": "#1460F3",
|
|
|
- "borderColor": "#000000",
|
|
|
- "colorAlpha" : 128,
|
|
|
- "borderWidth": 2,
|
|
|
- "borderStyle": {
|
|
|
- "style": "solid",
|
|
|
- "dashGap": 0.0
|
|
|
- }
|
|
|
- },
|
|
|
- "line": {
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderAlpha": 100,
|
|
|
- "borderWidth": 5,
|
|
|
- "borderStyle": {
|
|
|
- "style": "solid",
|
|
|
- "dashGap": 0.0
|
|
|
- }
|
|
|
- },
|
|
|
- "arrow": {
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderAlpha": 100,
|
|
|
- "borderWidth": 5,
|
|
|
- "borderStyle": {
|
|
|
- "style": "solid",
|
|
|
- "dashGap": 0.0
|
|
|
+ {
|
|
|
+ "modeConfig": {
|
|
|
+ "initialViewMode": "viewer", // When initializing the display mode, nsure that the selected mode exists in the availableViewModes. Otherwise, it will default to the viewer mode. Refer to the availableViewModes field for valid values.
|
|
|
+ "availableViewModes": [ // Only modes listed in the mode list will be displayed.
|
|
|
+ "viewer",
|
|
|
+ "annotations",
|
|
|
+ "contentEditor",
|
|
|
+ "forms",
|
|
|
+ "signatures"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ "toolbarConfig": { // Top Toolbar Configuration
|
|
|
+ "androidAvailableActions": [
|
|
|
+ "thumbnail",
|
|
|
+ "search",
|
|
|
+ "bota",
|
|
|
+ "menu"
|
|
|
+ ],
|
|
|
+ "iosLeftBarAvailableActions": [
|
|
|
+ "back",
|
|
|
+ "thumbnail"
|
|
|
+ ],
|
|
|
+ "iosRightBarAvailableActions": [
|
|
|
+ "search",
|
|
|
+ "bota",
|
|
|
+ "menu"
|
|
|
+ ],
|
|
|
+ "availableMenus": [
|
|
|
+ "viewSettings",
|
|
|
+ "documentEditor",
|
|
|
+ "documentInfo",
|
|
|
+ "watermark",
|
|
|
+ "security",
|
|
|
+ "flattened",
|
|
|
+ "save",
|
|
|
+ "share",
|
|
|
+ "openDocument"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ "annotationsConfig": { // Annotation Feature Configuration
|
|
|
+ "availableTypes": [ // List of enabled annotation types for the bottom annotation functionality
|
|
|
+ "note",
|
|
|
+ "highlight",
|
|
|
+ "underline",
|
|
|
+ "squiggly",
|
|
|
+ "strikeout",
|
|
|
+ "ink",
|
|
|
+ "pencil", // only ios platform
|
|
|
+ "circle",
|
|
|
+ "square",
|
|
|
+ "arrow",
|
|
|
+ "line",
|
|
|
+ "freetext",
|
|
|
+ "signature",
|
|
|
+ "stamp",
|
|
|
+ "pictures",
|
|
|
+ "link",
|
|
|
+ "sound"
|
|
|
+ ],
|
|
|
+ "availableTools": [ // Annotation tools enabled for the bottom annotation functionality
|
|
|
+ "setting",
|
|
|
+ "undo",
|
|
|
+ "redo"
|
|
|
+ ],
|
|
|
+ "initAttribute": { // Default properties for annotations upon initialization, influencing attributes such as color, transparency, etc., when adding annotations.
|
|
|
+ "note": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 255 // Color transparency 0~255
|
|
|
+ },
|
|
|
+ "highlight": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 77
|
|
|
+ },
|
|
|
+ "underline": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 77
|
|
|
+ },
|
|
|
+ "squiggly": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 77
|
|
|
+ },
|
|
|
+ "strikeout": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 77
|
|
|
+ },
|
|
|
+ "ink": {
|
|
|
+ "color": "#1460F3",
|
|
|
+ "alpha": 100,
|
|
|
+ "borderWidth": 10
|
|
|
+ },
|
|
|
+ "square": {
|
|
|
+ "fillColor": "#1460F3",
|
|
|
+ "borderColor": "#000000",
|
|
|
+ "colorAlpha" : 128,
|
|
|
+ "borderWidth": 2,
|
|
|
+ "borderStyle": {
|
|
|
+ "style": "solid", // Border line styles: solid, dashed
|
|
|
+ "dashGap": 0.0 // Dashed line interval length, applicable only when the style is set to 'dashed'.
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "circle": {
|
|
|
+ "fillColor": "#1460F3",
|
|
|
+ "borderColor": "#000000",
|
|
|
+ "colorAlpha" : 128,
|
|
|
+ "borderWidth": 2,
|
|
|
+ "borderStyle": {
|
|
|
+ "style": "solid",
|
|
|
+ "dashGap": 0.0
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "line": {
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderAlpha": 100,
|
|
|
+ "borderWidth": 5,
|
|
|
+ "borderStyle": {
|
|
|
+ "style": "solid",
|
|
|
+ "dashGap": 0.0
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "arrow": {
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderAlpha": 100,
|
|
|
+ "borderWidth": 5,
|
|
|
+ "borderStyle": {
|
|
|
+ "style": "solid",
|
|
|
+ "dashGap": 0.0
|
|
|
+ },
|
|
|
+ "startLineType": "none", // Starting arrow style options: none, openArrow, closedArrow, square, circle, diamond.
|
|
|
+ "tailLineType": "openArrow" // tail arrow style options
|
|
|
},
|
|
|
- "startLineType": "none", // Starting arrow style options: none, openArrow, closedArrow, square, circle, diamond.
|
|
|
- "tailLineType": "openArrow" // tail arrow style options
|
|
|
- },
|
|
|
- "freeText": {
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontColorAlpha": 255,
|
|
|
- "fontSize": 30,
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false,
|
|
|
- "alignment": "left", // left, center, right
|
|
|
- "typeface": "Helvetica" // Courier, Helvetica, Times-Roman
|
|
|
+ "freeText": {
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontColorAlpha": 255,
|
|
|
+ "fontSize": 30,
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false,
|
|
|
+ "alignment": "left", // left, center, right
|
|
|
+ "typeface": "Helvetica" // Courier, Helvetica, Times-Roman
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- },
|
|
|
- "contentEditorConfig": {
|
|
|
- "availableTypes": [
|
|
|
- "editorText",
|
|
|
- "editorImage"
|
|
|
- ],
|
|
|
- "availableTools": [
|
|
|
- "setting",
|
|
|
- "undo",
|
|
|
- "redo"
|
|
|
- ],
|
|
|
- "initAttribute": { // Default attributes for text type in content editing, influencing text properties when adding text.
|
|
|
- "text": {
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontColorAlpha" : 100,
|
|
|
- "fontSize": 30,
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false,
|
|
|
- "typeface": "Times-Roman", // Courier, Helvetica, Times-Roman
|
|
|
- "alignment": "left" // left, center, right
|
|
|
+ },
|
|
|
+ "contentEditorConfig": {
|
|
|
+ "availableTypes": [
|
|
|
+ "editorText",
|
|
|
+ "editorImage"
|
|
|
+ ],
|
|
|
+ "availableTools": [
|
|
|
+ "setting",
|
|
|
+ "undo",
|
|
|
+ "redo"
|
|
|
+ ],
|
|
|
+ "initAttribute": { // Default attributes for text type in content editing, influencing text properties when adding text.
|
|
|
+ "text": {
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontColorAlpha" : 100,
|
|
|
+ "fontSize": 30,
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false,
|
|
|
+ "typeface": "Times-Roman", // Courier, Helvetica, Times-Roman
|
|
|
+ "alignment": "left" // left, center, right
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- },
|
|
|
- "formsConfig": {
|
|
|
- "availableTypes": [ // Types of forms displayed in the list of the bottom form toolbar.
|
|
|
- "textField",
|
|
|
- "checkBox",
|
|
|
- "radioButton",
|
|
|
- "listBox",
|
|
|
- "comboBox",
|
|
|
- "signaturesFields",
|
|
|
- "pushButton"
|
|
|
- ],
|
|
|
- "availableTools": [
|
|
|
- "undo",
|
|
|
- "redo"
|
|
|
- ],
|
|
|
- "initAttribute": {
|
|
|
- "textField": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontSize": 20,
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false,
|
|
|
- "alignment": "left", // left, center, right
|
|
|
- "multiline": true,
|
|
|
- "typeface": "Helvetica" // Courier, Helvetica, Times-Roman
|
|
|
- },
|
|
|
- "checkBox": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "checkedColor": "#43474D",
|
|
|
- "isChecked": false,
|
|
|
- "checkedStyle": "check" // check, circle, cross, diamond, square, star
|
|
|
- },
|
|
|
- "radioButton": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "checkedColor": "#43474D",
|
|
|
- "isChecked": false,
|
|
|
- "checkedStyle": "circle" // check, circle, cross, diamond, square, star
|
|
|
- },
|
|
|
- "listBox": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontSize": 20,
|
|
|
- "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false
|
|
|
- },
|
|
|
- "comboBox": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontSize": 20,
|
|
|
- "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false
|
|
|
- },
|
|
|
- "pushButton": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#1460F3",
|
|
|
- "borderWidth": 2,
|
|
|
- "fontColor": "#000000",
|
|
|
- "fontSize": 20,
|
|
|
- "title": "Button",
|
|
|
- "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
- "isBold": false,
|
|
|
- "isItalic": false
|
|
|
- },
|
|
|
- "signaturesFields": {
|
|
|
- "fillColor": "#DDE9FF",
|
|
|
- "borderColor": "#000000",
|
|
|
- "borderWidth": 2
|
|
|
+ },
|
|
|
+ "formsConfig": {
|
|
|
+ "availableTypes": [ // Types of forms displayed in the list of the bottom form toolbar.
|
|
|
+ "textField",
|
|
|
+ "checkBox",
|
|
|
+ "radioButton",
|
|
|
+ "listBox",
|
|
|
+ "comboBox",
|
|
|
+ "signaturesFields",
|
|
|
+ "pushButton"
|
|
|
+ ],
|
|
|
+ "availableTools": [
|
|
|
+ "undo",
|
|
|
+ "redo"
|
|
|
+ ],
|
|
|
+ "initAttribute": {
|
|
|
+ "textField": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontSize": 20,
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false,
|
|
|
+ "alignment": "left", // left, center, right
|
|
|
+ "multiline": true,
|
|
|
+ "typeface": "Helvetica" // Courier, Helvetica, Times-Roman
|
|
|
+ },
|
|
|
+ "checkBox": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "checkedColor": "#43474D",
|
|
|
+ "isChecked": false,
|
|
|
+ "checkedStyle": "check" // check, circle, cross, diamond, square, star
|
|
|
+ },
|
|
|
+ "radioButton": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "checkedColor": "#43474D",
|
|
|
+ "isChecked": false,
|
|
|
+ "checkedStyle": "circle" // check, circle, cross, diamond, square, star
|
|
|
+ },
|
|
|
+ "listBox": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontSize": 20,
|
|
|
+ "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false
|
|
|
+ },
|
|
|
+ "comboBox": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontSize": 20,
|
|
|
+ "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false
|
|
|
+ },
|
|
|
+ "pushButton": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#1460F3",
|
|
|
+ "borderWidth": 2,
|
|
|
+ "fontColor": "#000000",
|
|
|
+ "fontSize": 20,
|
|
|
+ "title": "Button",
|
|
|
+ "typeface": "Helvetica", // Courier, Helvetica, Times-Roman
|
|
|
+ "isBold": false,
|
|
|
+ "isItalic": false
|
|
|
+ },
|
|
|
+ "signaturesFields": {
|
|
|
+ "fillColor": "#DDE9FF",
|
|
|
+ "borderColor": "#000000",
|
|
|
+ "borderWidth": 2
|
|
|
+ }
|
|
|
}
|
|
|
+ },
|
|
|
+ "readerViewConfig": {
|
|
|
+ "linkHighlight": true,
|
|
|
+ "formFieldHighlight": true,
|
|
|
+ "displayMode": "singlePage", // singlePage, doublePage, coverPage
|
|
|
+ "continueMode": true,
|
|
|
+ "verticalMode": true,
|
|
|
+ "cropMode": false,
|
|
|
+ "themes" : "light", // light, dark, sepia, reseda
|
|
|
+ "enableSliderBar": true,
|
|
|
+ "enablePageIndicator": true,
|
|
|
+ "pageSpacing": 10,
|
|
|
+ "pageScale": 1.0
|
|
|
}
|
|
|
- },
|
|
|
- "readerViewConfig": {
|
|
|
- "linkHighlight": true,
|
|
|
- "formFieldHighlight": true,
|
|
|
- "displayMode": "singlePage", // singlePage, doublePage, coverPage
|
|
|
- "continueMode": true,
|
|
|
- "verticalMode": true,
|
|
|
- "cropMode": false,
|
|
|
- "themes" : "light", // light, dark, sepia, reseda
|
|
|
- "enableSliderBar": true,
|
|
|
- "enablePageIndicator": true,
|
|
|
- "pageSpacing": 10,
|
|
|
- "pageScale": 1.0
|
|
|
}
|
|
|
-}
|
|
|
```
|
|
|
|
|
|
-
|
|
|
-
|
|
|
# 4 Support
|
|
|
|
|
|
## 4.1 Reporting Problems
|