diff --git a/_config.yml b/_config.yml
index 12d8ebe5..baeb6f1b 100644
--- a/_config.yml
+++ b/_config.yml
@@ -16,6 +16,7 @@ dcv_enumerations: /capture-vision/docs-archive/core/enums/
dcvb_cpp_api: /capture-vision/docs/server/programming/cplusplus/api-reference/
dcvb_dotnet_api: /capture-vision/docs/server/programming/dotnet/api-reference/
dcvb_python_api: /capture-vision/docs/server/programming/python/api-reference/
+dcvb_java_api: /capture-vision/docs/server/programming/java/api-reference/
dcvb_introduction: /capture-vision/docs/core/introduction/
dcvb_parameters_reference: /capture-vision/docs/core/parameters/reference/
dcvb_enumerations: /capture-vision/docs/core/enums/
diff --git a/_data/full_tree.yml b/_data/full_tree.yml
index 46f67e90..02f381d7 100644
--- a/_data/full_tree.yml
+++ b/_data/full_tree.yml
@@ -24,6 +24,7 @@ tree_file_list:
- sidelist-programming/programming-java-v8.4.0.html
- sidelist-programming/programming-java-v8.9.3.html
- sidelist-programming/programming-java-v9.6.20.html
+ - sidelist-programming/programming-java-v9.6.40.html
- sidelist-programming/programming-java.html
- sidelist-programming/programming-python-v8.4.0.html
- sidelist-programming/programming-python-v8.9.3.html
diff --git a/_includes/sidelist-programming/programming-java-v9.6.40.html b/_includes/sidelist-programming/programming-java-v9.6.40.html
new file mode 100644
index 00000000..e498ccc1
--- /dev/null
+++ b/_includes/sidelist-programming/programming-java-v9.6.40.html
@@ -0,0 +1,133 @@
+
DEVELOPMENT
+User Guide
+
+
+Samples and Demo
+API Reference
+
+
+USEFUL RESOURCES
+
+Release Notes
+
+
+Upgrade Instructions
+
+OTHER EDITIONS
+Choose a Language
+
+
\ No newline at end of file
diff --git a/_includes/sidelist-programming/programming-java.html b/_includes/sidelist-programming/programming-java.html
index e498ccc1..2d26eaf5 100644
--- a/_includes/sidelist-programming/programming-java.html
+++ b/_includes/sidelist-programming/programming-java.html
@@ -1,127 +1,213 @@
DEVELOPMENT
-User Guide
-
- - Getting Started
-
- - Explore Features
-
- - Basic Features
-
- - Specify barcode formats and count
- - Read barcode from image
- - Read a specific area/region
+- User Guide
+
+- Samples and Demo
+- API Reference
+
+ - DynamsoftCaptureVisionRouter
+
+ - CaptureVisionRouter
+
- - Handle Different Scenarios
-
- - Read inverted barcodes
- - Read deformed barcodes
- - Read incomplete barcodes
- - Read barcodes from a large image
- - Read barcodes with small module size
- - Read images with imbalanced colors
- - Read images with uneven lighting
- - Read images with texture
- - Read images with lots of text
- - Read high-density QR Codes
- - Preprocess images to read difficult barcodes
- - Automatically detect barcode Region of Interest
+ - Classes
+
- - Barcode Results
-
- - Get barcode confidence and rotation
- - Get barcode location
- - Get detailed barcode information
- - Filter and sort decoding results
- - Use intermediate results
+ - Interfaces
+
- - Advanced Features
-
- - Check Use Cases
-
-
-- Samples and Demo
-- API Reference
-
- - BarcodeReader Class
-
- - Initialization and Destroy
- - License Methods
- - Decode Methods
- - Basic Settings Methods
- - Advanced Settings Methods
- - Result Methods
- - General Methods
- - Video Methods
+ - DynamsoftCore
+
+
+ - DynamsoftUtility
+
- - Auxiliary Classes
-
- - AztecDetails
- - BarcodeReaderException
- - Contour
- - DataMatrixDetails
- - DMDLSConnectionParameters
- - ExtendedResult
- - FrameDecodingParameters
- - FurtherModes
- - ImageData
- - InstancePoolStatus
- - IntermediateResult
- - LineSegment
- - LocalizationResult
- - OneDCodeDetails
- - PDF417Details
- - PublicRuntimeSettings
- - QRCodeDetails
- - Quadrilateral
- - RegionDefinition
- - RegionOfInterest
- - SamplingImageData
- - TextResult
+ - DynamsoftLicense
+
- - Enumerations
-
+{%- include liquid_searchVersionTreeFile.html ver=include.ver curPath=include.curPath lang=include.lang targetRelativePath="sidelist-understanding.html" -%}
- USEFUL RESOURCES
- Release Notes
-
-- Upgrade Instructions
+- License Initialization
+{%- include liquid_searchVersionTreeFile.html ver=include.ver curPath=include.curPath lang=include.lang targetRelativePath="sidelist-faq.html" -%}
- OTHER EDITIONS
- Choose a Language
-
+
- Python
- .NET
- C++
diff --git a/assets/js/dbrServerVersionSearch.json b/assets/js/dbrServerVersionSearch.json
index b635208d..3bf07f30 100644
--- a/assets/js/dbrServerVersionSearch.json
+++ b/assets/js/dbrServerVersionSearch.json
@@ -1,4 +1,13 @@
[
+ {
+ "version": "11.0.6000",
+ "matchVersion": {
+ "cpp": "3.0.6000",
+ "dotnet": "3.0.6000",
+ "python": "3.0.6000",
+ "java": "3.0.6000"
+ }
+ },
{
"version": "11.0.4000",
"matchVersion": {
diff --git a/programming-old/java/index.md b/programming-old/java/index-v9.6.40.md
similarity index 96%
rename from programming-old/java/index.md
rename to programming-old/java/index-v9.6.40.md
index b87a33d5..c8249967 100644
--- a/programming-old/java/index.md
+++ b/programming-old/java/index-v9.6.40.md
@@ -5,7 +5,7 @@ description: This is the main page of Dynamsoft Barcode Reader SDK Java Edition.
keywords: java
needAutoGenerateSidebar: false
breadcrumbText: Java
-permalink: /programming/java/index.html
+permalink: /programming/java/index-v9.6.40.html
---
diff --git a/programming-old/java/release-notes/index.md b/programming-old/java/release-notes/index-v9.6.40.md
similarity index 97%
rename from programming-old/java/release-notes/index.md
rename to programming-old/java/release-notes/index-v9.6.40.md
index 56254c23..b7dce2c8 100644
--- a/programming-old/java/release-notes/index.md
+++ b/programming-old/java/release-notes/index-v9.6.40.md
@@ -5,7 +5,7 @@ description: This is the release notes page of Dynamsoft Barcode Reader SDK Java
keywords: release notes, java
needAutoGenerateSidebar: false
breadcrumbText: Release Notes
-permalink: /programming/java/release-notes/index.html
+permalink: /programming/java/release-notes/index-v9.6.40.html
---
# Release Notes for Java Edition
diff --git a/programming-old/java/samples/index.md b/programming-old/java/samples/index-v9.6.40.md
similarity index 97%
rename from programming-old/java/samples/index.md
rename to programming-old/java/samples/index-v9.6.40.md
index b1cd7708..635523ae 100644
--- a/programming-old/java/samples/index.md
+++ b/programming-old/java/samples/index-v9.6.40.md
@@ -4,7 +4,7 @@ title: Samples - Dynamsoft Barcode Reader SDK Java Edition
description: Sample list page of Dynamsoft Barcode Reader Java Edition.
keywords: java
needAutoGenerateSidebar: false
-permalink: /programming/java/samples/index.html
+permalink: /programming/java/samples/index-v9.6.40.html
---
# Samples and Demos - Java Edition
diff --git a/programming-old/java/upgrade-instruction.md b/programming-old/java/upgrade-instruction-v9.6.40.md
similarity index 97%
rename from programming-old/java/upgrade-instruction.md
rename to programming-old/java/upgrade-instruction-v9.6.40.md
index 2c2ad09d..be9212bc 100644
--- a/programming-old/java/upgrade-instruction.md
+++ b/programming-old/java/upgrade-instruction-v9.6.40.md
@@ -4,7 +4,7 @@ title: Upgrade Instruction - Dynamsoft Barcode Reader SDK Java Edition
description: This page shows how to upgrade to Dynamsoft Barcode Reader SDK Java Edition latest version.
keywords: Upgrade, how-to guides
needAutoGenerateSidebar: false
-permalink: /programming/java/upgrade-instruction.html
+permalink: /programming/java/upgrade-instructio-v9.6.40.html
---
diff --git a/programming-old/java/user-guide.md b/programming-old/java/user-guide-v9.6.40.md
similarity index 99%
rename from programming-old/java/user-guide.md
rename to programming-old/java/user-guide-v9.6.40.md
index c5bccd10..fa84aba8 100644
--- a/programming-old/java/user-guide.md
+++ b/programming-old/java/user-guide-v9.6.40.md
@@ -6,7 +6,7 @@ keywords: user guide, java
needAutoGenerateSidebar: true
needGenerateH3Content: true
noTitleIndex: true
-permalink: /programming/java/user-guide.html
+permalink: /programming/java/user-guide-v9.6.40.html
---
diff --git a/programming/cplusplus/release-notes/cpp-11.md b/programming/cplusplus/release-notes/cpp-11.md
index 29bdc9b1..1e0c083d 100644
--- a/programming/cplusplus/release-notes/cpp-11.md
+++ b/programming/cplusplus/release-notes/cpp-11.md
@@ -8,6 +8,17 @@ needGenerateH3Content: false
# Release Notes for C++ Edition - 11.x
+## 11.0.6000 (08/06/2025)
+
+### Changed
+
+- `StartCapturing` now stops immediately and returns a license-related error code if none of the tasks have a valid license, instead of proceeding and returning an empty result.
+
+### Fixed
+
+- Fixed a bug that caused a crash when using a specific type of license.
+- Fixed various minor bugs and improved overall stability.
+
## 11.0.4000 (07/15/2025)
### New
diff --git a/programming/cplusplus/release-notes/index.md b/programming/cplusplus/release-notes/index.md
index bcf66bf5..0d6f8402 100644
--- a/programming/cplusplus/release-notes/index.md
+++ b/programming/cplusplus/release-notes/index.md
@@ -8,6 +8,7 @@ needAutoGenerateSidebar: false
# Release Notes - C++ Edition
+- [11.0.6000 (08/06/2025)]({{ site.dbr_cpp_release_notes }}cpp-11.html#1106000-08062025)
- [11.0.4000 (07/15/2025)]({{ site.dbr_cpp_release_notes }}cpp-11.html#1104000-07152025)
- [11.0.3000 (05/13/2025)]({{ site.dbr_cpp_release_notes }}cpp-11.html#1103000-05132025)
- [11.0.1000 (03/04/2025)]({{ site.dbr_cpp_release_notes }}cpp-11.html#1101000-03042025)
diff --git a/programming/dotnet/release-notes/dotnet-11.md b/programming/dotnet/release-notes/dotnet-11.md
index 424ce43b..ddffa949 100644
--- a/programming/dotnet/release-notes/dotnet-11.md
+++ b/programming/dotnet/release-notes/dotnet-11.md
@@ -8,6 +8,18 @@ needGenerateH3Content: false
# Release Notes for .NET Edition - 11.x
+## 11.0.6000 (08/06/2025)
+
+### Changed
+
+- `StartCapturing` now stops immediately and returns a license-related error code if none of the tasks have a valid license, instead of proceeding and returning an empty result.
+
+### Fixed
+
+- Fixed a bug that caused a crash when using a specific type of license.
+- Fixed a crash that occurred when calling the default constructor of `FileImageTag` or `VideoFrameTag`.
+- Fixed various minor bugs and improved overall stability.
+
## 11.0.4000 (07/15/2025)
### New
diff --git a/programming/dotnet/release-notes/index.md b/programming/dotnet/release-notes/index.md
index f1afa30c..954b47d0 100644
--- a/programming/dotnet/release-notes/index.md
+++ b/programming/dotnet/release-notes/index.md
@@ -8,6 +8,7 @@ needAutoGenerateSidebar: false
# Release Notes for .NET Edition
+- [11.0.6000 (08/06/2025)]({{ site.dbr_dotnet_release_notes }}dotnet-11.html#1106000-08062025)
- [11.0.4000 (07/15/2025)]({{ site.dbr_dotnet_release_notes}}dotnet-11.html#1104000-07152025)
- [11.0.3000 (05/13/2025)]({{ site.dbr_dotnet_release_notes}}dotnet-11.html#1103000-05132025)
- [10.4.2000 (10/10/2024)]({{ site.dbr_dotnet_release_notes}}dotnet-10.html#1042000-10102024)
diff --git a/programming/java/api-reference/aztec-details.md b/programming/java/api-reference/aztec-details.md
new file mode 100644
index 00000000..f5a55aa6
--- /dev/null
+++ b/programming/java/api-reference/aztec-details.md
@@ -0,0 +1,87 @@
+---
+layout: default-layout
+title: AztecDetails Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of AztecDetails class in Dynamsoft Barcode Reader Java Edition.
+keywords: rows, columns, layerNumber, AztecDetails, api reference
+---
+
+# AztecDetails
+
+The `AztecDetails` class represents a barcode in Aztec format. It inherits from the `BarcodeDetails` class and contains information about the row count, column count, and layer number of the barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html) -> AztecDetails
+
+```java
+public class AztecDetails extends BarcodeDetails
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+|---------- | ---- | ----------- |
+| [`rows`](#rows) | *int* | The number of rows in the Aztec barcode. |
+| [`columns`](#columns) | *int* | The number of columns in the Aztec barcode. |
+| [`layerNumber`](#layernumber) | *int* | The layer number of the Aztec barcode. |
+
+## Constructors
+
+| Constructor | Description |
+|------------ | ----------- |
+| [`AztecDetails()`](#aztecdetails) | Default constructor. |
+| [`AztecDetails(int rows, int columns, int layerNumber)`](#aztecdetailsint-rows-int-columns-int-layernumber) | Constructor with parameters. |
+
+## Attribute Details
+
+### rows
+
+The number of rows in the Aztec barcode.
+
+```java
+public int rows
+```
+
+### columns
+
+The number of columns in the Aztec barcode.
+
+```java
+public int columns
+```
+
+### layerNumber
+
+Specifies the layer number of the Aztec barcode. A negative number (-1, -2, -3, -4) specifies a compact Aztec code, while a positive number (1, 2, .. 32) specifies a normal (full-range) Aztec code.
+
+```java
+public int layerNumber
+```
+
+## Constructor Details
+
+### AztecDetails()
+
+Default constructor. Initializes a new instance of the AztecDetails class with default values (-1, -1, -1).
+
+```java
+public AztecDetails()
+```
+
+### AztecDetails(int rows, int columns, int layerNumber)
+
+Constructor with parameters. Initializes a new instance of the AztecDetails class with specified values.
+
+```java
+public AztecDetails(int rows, int columns, int layerNumber)
+```
+
+**Parameters**
+
+`rows`: The number of rows in the Aztec barcode.
+
+`columns`: The number of columns in the Aztec barcode.
+
+`layerNumber`: The layer number of the Aztec barcode.
diff --git a/programming/java/api-reference/barcode-details.md b/programming/java/api-reference/barcode-details.md
new file mode 100644
index 00000000..44aecd45
--- /dev/null
+++ b/programming/java/api-reference/barcode-details.md
@@ -0,0 +1,18 @@
+---
+layout: default-layout
+title: BarcodeDetails Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of BarcodeDetails class in Dynamsoft Barcode Reader Java Edition.
+keywords: BarcodeDetails, api reference
+---
+
+# BarcodeDetails
+
+The `BarcodeDetails` class represents the details of a barcode. It is an abstract base class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+```java
+public abstract class BarcodeDetails
+```
diff --git a/programming/java/api-reference/barcode-reader-module.md b/programming/java/api-reference/barcode-reader-module.md
new file mode 100644
index 00000000..d3beb071
--- /dev/null
+++ b/programming/java/api-reference/barcode-reader-module.md
@@ -0,0 +1,43 @@
+---
+layout: default-layout
+title: BarcodeReaderModule Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows the Java Edition of the class BarcodeReaderModule in Barcode Reader Module.
+keywords: barcode reader module, java
+needAutoGenerateSidebar: true
+needGenerateH3Content: true
+---
+
+# BarcodeReaderModule
+
+The `BarcodeReaderModule` class defines general functions in the barcode reader module.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+```java
+public final class BarcodeReaderModule
+```
+
+## Methods
+
+| Method | Description |
+| --------------------------------------------------------- | -------------------------------------------------- |
+| [getVersion](#getversion) | Returns the version of the barcode reader module. |
+
+### getVersion
+
+Returns the version of the barcode reader module.
+
+```java
+public static String getVersion()
+```
+
+**Parameters**
+
+None.
+
+**Return Value**
+
+Returns a string representing the version of the barcode reader module.
+
diff --git a/programming/java/api-reference/barcode-result-item.md b/programming/java/api-reference/barcode-result-item.md
new file mode 100644
index 00000000..6ac513ad
--- /dev/null
+++ b/programming/java/api-reference/barcode-result-item.md
@@ -0,0 +1,235 @@
+---
+layout: default-layout
+title: BarcodeResultItem Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of BarcodeResultItem class in Dynamsoft Barcode Reader Java Edition.
+keywords: getFormat, getText, getLocation, getConfidence, getModuleSize, BarcodeResultItem, api reference
+---
+
+# BarcodeResultItem Class
+
+The `BarcodeResultItem` class represents a barcode result item decoded by barcode reader engine. It is derived from `CapturedResultItem`.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [CapturedResultItem]({{ site.dcvb_java_api }}core/basic-classes/captured-result-item.html) -> BarcodeResultItem
+
+```java
+public class BarcodeResultItem extends CapturedResultItem
+```
+
+## Methods
+
+| Method | Description |
+|----------------------|-------------|
+| [`getFormat`](#getformat) | Gets the format of the decoded barcode result. |
+| [`getFormatString`](#getformatstring) | Gets the format string of the decoded barcode result. |
+| [`getText`](#gettext) | Gets the text result of the decoded barcode. |
+| [`getBytes`](#getbytes) | Gets the text bytes of the decoded barcode result. |
+| [`getLocation`](#getlocation) | Gets the location of the decoded barcode in a quadrilateral. |
+| [`getConfidence`](#getconfidence) | Gets the confidence of the decoded barcode result. |
+| [`getAngle`](#getangle) | Gets the angle of the decoded barcode result. |
+| [`getModuleSize`](#getmodulesize) | Gets the module size of the decoded barcode result. |
+| [`getDetails`](#getdetails) | Gets the details of the decoded barcode result. |
+| [`isDPM`](#isdpm) | Gets whether the decoded barcode is a DPM code. |
+| [`isMirrored`](#ismirrored) | Gets whether the decoded barcode is a mirrored barcode. |
+| [`setLocation`](#setlocation) | Sets the location of the decoded barcode. |
+| [`setText`](#settext) | Sets the text of the decoded barcode. |
+| [`setBytes`](#setbytes) | Sets the bytes of the decoded barcode. |
+
+## Method Details
+
+### getFormat
+
+Gets the format of the decoded barcode result.
+
+```java
+public @EnumBarcodeFormat long getFormat()
+```
+
+**Return Value**
+
+Returns the format of the decoded barcode result which is a value of the `EnumBarcodeFormat` enumeration.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### getFormatString
+
+Gets the format string of the decoded barcode result.
+
+```java
+public String getFormatString()
+```
+
+**Return Value**
+
+Returns the format string of the decoded barcode result.
+
+### getText
+
+Gets the text result of the decoded barcode.
+
+```java
+public String getText()
+```
+
+**Return Value**
+
+Returns the text result of the decoded barcode.
+
+### getBytes
+
+Gets the text bytes of the decoded barcode result.
+
+```java
+public byte[] getBytes()
+```
+
+**Return Value**
+
+Returns the text bytes of the decoded barcode result.
+
+### getLocation
+
+Gets the location of the decoded barcode in a quadrilateral.
+
+```java
+public Quadrilateral getLocation()
+```
+
+**Return Value**
+
+Returns the location of the decoded barcode in a quadrilateral.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+### getConfidence
+
+Gets the confidence of the decoded barcode result.
+
+```java
+public int getConfidence()
+```
+
+**Return Value**
+
+Returns the confidence of the decoded barcode result.
+
+### getAngle
+
+Gets the angle of the decoded barcode result.
+
+```java
+public int getAngle()
+```
+
+**Return Value**
+
+Returns the angle of the decoded barcode result.
+
+**See Also**
+
+[How the angle is calculated for different barcode types]({{site.features}}get-confidence-rotation.html?lang=java#barcode-rotation-angle)
+
+### getModuleSize
+
+Gets the module size of the decoded barcode result.
+
+```java
+public int getModuleSize()
+```
+
+**Return Value**
+
+Returns the module size of the decoded barcode result.
+
+### getDetails
+
+Gets the details of the decoded barcode result.
+
+```java
+public BarcodeDetails getDetails()
+```
+
+**Return Value**
+
+Returns the details of the decoded barcode result.
+
+**See Also**
+
+- [AztecDetails]({{ site.dbr_java_api }}aztec-details.html)
+- [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html)
+- [DataMatrixDetails]({{ site.dbr_java_api }}datamatrix-details.html)
+- [OneDCodeDetails]({{ site.dbr_java_api }}oned-code-details.html)
+- [PDF417Details]({{ site.dbr_java_api }}pdf417-details.html)
+- [QRCodeDetails]({{ site.dbr_java_api }}qr-code-details.html)
+
+### isDPM
+
+Gets whether the decoded barcode is a DPM code.
+
+```java
+public boolean isDPM()
+```
+
+**Return Value**
+
+Returns whether the decoded barcode is a DPM code.
+
+### isMirrored
+
+Gets whether the decoded barcode is mirrored.
+
+```java
+public boolean isMirrored()
+```
+
+**Return Value**
+
+Returns whether the decoded barcode is mirrored.
+
+### setLocation
+
+Sets the location of the decoded barcode.
+
+```java
+public void setLocation(Quadrilateral location) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`location`: The location of the decoded barcode in a quadrilateral.
+
+**Exceptions**
+
+`BarcodeReaderException`: Thrown when an error occurs during the operation.
+
+### setText
+
+Sets the text of the decoded barcode.
+
+```java
+public void setText(String text)
+```
+
+**Parameters**
+
+`text`: The text of the decoded barcode.
+
+### setBytes
+
+Sets the bytes of the decoded barcode.
+
+```java
+public void setBytes(byte[] bytes)
+```
+
+**Parameters**
+
+`bytes`: The bytes of the decoded barcode.
+
diff --git a/programming/java/api-reference/candidate-barcode-zone.md b/programming/java/api-reference/candidate-barcode-zone.md
new file mode 100644
index 00000000..18533f1d
--- /dev/null
+++ b/programming/java/api-reference/candidate-barcode-zone.md
@@ -0,0 +1,108 @@
+---
+layout: default-layout
+title: CandidateBarcodeZone Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows CandidateBarcodeZone class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getLocation, setLocation, getPossibleFormats, setPossibleFormats, CandidateBarcodeZone, api reference
+---
+# CandidateBarcodeZone Class
+
+The `CandidateBarcodeZone` class represents a candidate zone for barcode detection.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+```java
+public class CandidateBarcodeZone
+```
+
+## Constructors
+
+| Constructor | Description |
+|-------------|-------------|
+| [`CandidateBarcodeZone()`](#candidatebarccodezone) | Initializes a new instance of the `CandidateBarcodeZone` class. |
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getLocation`](#getlocation) | Gets the location of the candidate barcode.|
+| [`setLocation`](#setlocation) | Sets the location of the candidate barcode.|
+| [`getPossibleFormats`](#getpossibleformats) | Gets the possible formats of the candidate barcode. |
+| [`setPossibleFormats`](#setpossibleformats) | Sets the possible formats of the candidate barcode. |
+
+## Constructor Details
+
+### CandidateBarcodeZone
+
+Initializes a new instance of the `CandidateBarcodeZone` class.
+
+```java
+public CandidateBarcodeZone()
+```
+
+## Method Details
+
+### getLocation
+
+Gets the location of the candidate barcode.
+
+```java
+public Quadrilateral getLocation()
+```
+
+**Return Value**
+
+Returns the location of the candidate barcode.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+### setLocation
+
+Sets the location of the candidate barcode.
+
+```java
+public void setLocation(Quadrilateral location)
+```
+
+**Parameters**
+
+`location`: The location of the candidate barcode.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+### getPossibleFormats
+
+Gets the possible formats of the candidate barcode.
+
+```java
+public long getPossibleFormats()
+```
+
+**Return Value**
+
+Returns the possible formats of the candidate barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### setPossibleFormats
+
+Sets the possible formats of the candidate barcode.
+
+```java
+public void setPossibleFormats(long possibleFormats)
+```
+
+**Parameters**
+
+`possibleFormats`: The possible formats of the candidate barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
\ No newline at end of file
diff --git a/programming/java/api-reference/candidate-barcode-zones-unit.md b/programming/java/api-reference/candidate-barcode-zones-unit.md
new file mode 100644
index 00000000..89b09715
--- /dev/null
+++ b/programming/java/api-reference/candidate-barcode-zones-unit.md
@@ -0,0 +1,116 @@
+---
+layout: default-layout
+title: CandidateBarcodeZonesUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows CandidateBarcodeZonesUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getCount, getCandidateBarcodeZone, addCandidateBarcodeZone, removeAllCandidateBarcodeZones, removeCandidateBarcodeZone, CandidateBarcodeZonesUnit, api reference
+---
+# CandidateBarcodeZonesUnit Class
+
+The `CandidateBarcodeZonesUnit` class represents a unit that contains candidate barcode zones unit. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> CandidateBarcodeZonesUnit
+
+```java
+public class CandidateBarcodeZonesUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getCount`](#getcount) | Gets the number of candidate barcode zones in the unit.|
+| [`getCandidateBarcodeZone`](#getcandidatebarccodezone) | Gets a candidate barcode zone.|
+| [`getCandidateBarcodeZones`](#getcandidatebarccodezones) | Gets all candidate barcode zones.|
+| [`addCandidateBarcodeZone`](#addcandidatebarccodezone) | Adds a candidate barcode zone.|
+| [`removeAllCandidateBarcodeZones`](#removeallcandidatebarccodezones) | Removes all the candidate barcode zones.|
+| [`removeCandidateBarcodeZone`](#removecandidatebarccodezone) | Removes a candidate barcode zone at the specified index.|
+
+## Method Details
+
+### getCount
+
+Gets the number of candidate barcode zones in the unit.
+
+```java
+public int getCount()
+```
+
+**Return Value**
+
+Returns the number of candidate barcode zones in the unit.
+
+### getCandidateBarcodeZone
+
+Gets a candidate barcode zone at the specified index.
+
+```java
+public CandidateBarcodeZone getCandidateBarcodeZone(int index) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`index`: The index of the candidate barcode zone.
+
+**Return Value**
+
+Returns the candidate barcode zone at the specified index.
+
+**Exceptions**
+
+`BarcodeReaderException`: Thrown when an error occurs during the operation.
+
+### getCandidateBarcodeZones
+
+Gets all candidate barcode zones.
+
+```java
+public CandidateBarcodeZone[] getCandidateBarcodeZones()
+```
+
+**Return Value**
+
+Returns an array of all candidate barcode zones.
+
+### addCandidateBarcodeZone
+
+Adds a candidate barcode zone.
+
+```java
+public void addCandidateBarcodeZone(CandidateBarcodeZone candidateBarcodeZone) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`candidateBarcodeZone`: The candidate barcode zone to add.
+
+**Exceptions**
+
+`BarcodeReaderException`: Thrown when an error occurs during the operation.
+
+### removeAllCandidateBarcodeZones
+
+Removes all the candidate barcode zones.
+
+```java
+public void removeAllCandidateBarcodeZones()
+```
+
+### removeCandidateBarcodeZone
+
+Removes a candidate barcode zone at the specified index.
+
+```java
+public void removeCandidateBarcodeZone(int index) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`index`: The index of the candidate barcode zone to remove.
+
+**Exceptions**
+
+`BarcodeReaderException`: Thrown when an error occurs during the operation.
diff --git a/programming/java/api-reference/complemented-barcode-image-unit.md b/programming/java/api-reference/complemented-barcode-image-unit.md
new file mode 100644
index 00000000..b2007729
--- /dev/null
+++ b/programming/java/api-reference/complemented-barcode-image-unit.md
@@ -0,0 +1,82 @@
+---
+layout: default-layout
+title: ComplementedBarcodeImageUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows ComplementedBarcodeImageUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getImageData, getLocation, setLocation, ComplementedBarcodeImageUnit, api reference
+---
+# ComplementedBarcodeImageUnit Class
+The `ComplementedBarcodeImageUnit` class represents a unit that contains complemented barcode image data. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> ComplementedBarcodeImageUnit
+
+```java
+public class ComplementedBarcodeImageUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getImageData`](#getimagedata) | Gets the complemented barcode image data.|
+| [`getLocation`](#getlocation) | Gets the location of the complemented barcode in a quadrilateral.|
+| [`setLocation`](#setlocation) | Sets the location of the complemented barcode in a quadrilateral.|
+
+### getImageData
+
+Gets the complemented barcode image data.
+
+```java
+public ImageData getImageData()
+```
+
+**Return value**
+
+Returns the complemented image of the barcode.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+
+### getLocation
+
+Gets the location of the complemented barcode in a quadrilateral.
+
+```java
+public Quadrilateral getLocation()
+```
+
+**Return value**
+
+Returns the location of the complemented barcode in a quadrilateral.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+### setLocation
+
+Sets the location of the complemented barcode in a quadrilateral.
+
+```java
+public void setLocation(Quadrilateral location)
+public void setLocation(Quadrilateral location, double[] matrixToOriginalImage)
+```
+
+**Parameters**
+
+`location` The location of the complemented barcode.
+
+`matrixToOriginalImage` The matrix to original image. The array length must be 9.
+
+**Exceptions**
+
+`IllegalArgumentException` If the `matrixToOriginalImage` array length is not 9.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
diff --git a/programming/java/api-reference/datamatrix-details.md b/programming/java/api-reference/datamatrix-details.md
new file mode 100644
index 00000000..d959a06e
--- /dev/null
+++ b/programming/java/api-reference/datamatrix-details.md
@@ -0,0 +1,108 @@
+---
+layout: default-layout
+title: DataMatrixDetails Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of DataMatrixDetails class in Dynamsoft Barcode Reader Java Edition.
+keywords: rows, columns, dataRegionRows, dataRegionColumns, dataRegionNumber, DataMatrixDetails, api reference
+---
+# DataMatrixDetails
+
+The `DataMatrixDetails` class represents the details of a DataMatrix barcode. It is derived from the `BarcodeDetails` class and contains various attributes related to the DataMatrix barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html) -> DataMatrixDetails
+
+```java
+public class DataMatrixDetails extends BarcodeDetails
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+|---------- | ---- | ----------- |
+| [`rows`](#rows) | *int* | The row count of the DataMatrix barcode. |
+| [`columns`](#columns) | *int* | The column count of the DataMatrix barcode. |
+| [`dataRegionRows`](#dataregionrows) | *int* | The data region row count of the DataMatrix barcode. |
+| [`dataRegionColumns`](#dataregioncolumns) | *int* | The data region column count of the DataMatrix barcode. |
+| [`dataRegionNumber`](#dataregionnumber) | *int* | The data region count. |
+
+## Constructors
+
+| Constructor | Description |
+|------------ | ----------- |
+| [`DataMatrixDetails()`](#datamatrixdetails) | Default constructor. |
+| [`DataMatrixDetails(int rows, int columns, int dataRegionRows, int dataRegionColumns, int dataRegionNumber)`](#datamatrixdetailsint-rows-int-columns-int-dataregionrows-int-dataregioncolumns-int-dataregionnumber) | Constructor with parameters. |
+
+## Attribute Details
+
+### rows
+
+The row count of the DataMatrix barcode.
+
+```java
+public int rows
+```
+
+### columns
+
+The column count of the DataMatrix barcode.
+
+```java
+public int columns
+```
+
+### dataRegionRows
+
+The data region row count of the DataMatrix barcode.
+
+```java
+public int dataRegionRows
+```
+
+### dataRegionColumns
+
+The data region column count of the DataMatrix barcode.
+
+```java
+public int dataRegionColumns
+```
+
+### dataRegionNumber
+
+The data region count.
+
+```java
+public int dataRegionNumber
+```
+
+## Constructor Details
+
+### DataMatrixDetails()
+
+Default constructor. Initializes a new instance of the DataMatrixDetails class with default values (-1, -1, -1, -1, -1).
+
+```java
+public DataMatrixDetails()
+```
+
+### DataMatrixDetails(int rows, int columns, int dataRegionRows, int dataRegionColumns, int dataRegionNumber)
+
+Constructor with parameters. Initializes a new instance of the DataMatrixDetails class with specified values.
+
+```java
+public DataMatrixDetails(int rows, int columns, int dataRegionRows, int dataRegionColumns, int dataRegionNumber)
+```
+
+**Parameters**
+
+`rows`: The row count of the DataMatrix barcode.
+
+`columns`: The column count of the DataMatrix barcode.
+
+`dataRegionRows`: The data region row count of the DataMatrix barcode.
+
+`dataRegionColumns`: The data region column count of the DataMatrix barcode.
+
+`dataRegionNumber`: The data region count.
diff --git a/programming/java/api-reference/decoded-barcode-element.md b/programming/java/api-reference/decoded-barcode-element.md
new file mode 100644
index 00000000..d5eb6ade
--- /dev/null
+++ b/programming/java/api-reference/decoded-barcode-element.md
@@ -0,0 +1,307 @@
+---
+layout: default-layout
+title: DecodedBarcodeElement Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows DecodedBarcodeElement class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getFormat, getText, getBytes, getAngle, getConfidence, isDPM, DecodedBarcodeElement, api reference
+---
+# DecodedBarcodeElement Class
+
+The `DecodedBarcodeElement` class represents a decoded barcode element. It inherits from the `RegionObjectElement` class and provides additional functionality for retrieving information about the decoded barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [RegionObjectElement]({{ site.dcvb_java_api }}core/intermediate-results/region-object-element.html) -> DecodedBarcodeElement
+
+```java
+public class DecodedBarcodeElement extends RegionObjectElement
+```
+
+## Methods
+
+| Method | Description |
+| --- | --- |
+| [`DecodedBarcodeElement`](#decodedbarcodeelement) | Initializes a new instance of the `DecodedBarcodeElement` class. |
+| [`getFormat`](#getformat) | Gets the format of the barcode. |
+| [`getFormatString`](#getformatstring) | Gets the string representation of the barcode format. |
+| [`getText`](#gettext) | Gets the text of the decoded barcode. |
+| [`getBytes`](#getbytes)| Gets the raw bytes of the decoded barcode.|
+| [`getDetails`](#getdetails) | Gets the details of the decoded barcode.|
+| [`isDPM`](#isdpm)| Determines whether the decoded barcode is a DPM (Direct Part Marking) code.|
+| [`isMirrored`](#ismirrored)| Determines whether the decoded barcode is mirrored.|
+| [`getAngle`](#getangle) | Gets the orientation angle of the barcode. |
+| [`getModuleSize`](#getmodulesize) | Gets the module size of the barcode. |
+| [`getConfidence`](#getconfidence) | Gets the confidence score of the barcode recognition result. |
+| [`getExtendedBarcodeResultsCount`](#getextendedbarcoderesultscount) | Gets the number of extended barcode results for the decoded barcode.|
+| [`getExtendedBarcodeResult`](#getextendedbarcoderesult) | Gets the extended barcode result at the specified index for the decoded barcode.|
+| [`getExtendedBarcodeResults`](#getextendedbarcoderesults) | Gets all extended barcode results for the decoded barcode.|
+| [`setFormat`](#setformat) | Sets the format of the barcode. |
+| [`setText`](#settext) | Sets the text of the decoded barcode. |
+| [`setBytes`](#setbytes)| Sets the raw bytes of the decoded barcode.|
+| [`setConfidence`](#setconfidence) | Sets the confidence score of the barcode recognition result. |
+| [`setLocation`](#setlocation) | Sets the location of the decoded barcode. |
+
+### DecodedBarcodeElement
+
+Initializes a new instance of the `DecodedBarcodeElement` class.
+
+```java
+public DecodedBarcodeElement()
+```
+
+### getFormat
+
+Gets the format of the barcode.
+
+```java
+public @EnumBarcodeFormat long getFormat()
+```
+
+**Return value**
+
+Returns the format of the barcode. This is one of the values of the `EnumBarcodeFormat` enumeration.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### getFormatString
+
+Gets the string representation of the barcode format.
+
+```java
+public String getFormatString()
+```
+
+**Return value**
+
+Returns the string representation of the barcode format.
+
+### getText
+
+Gets the text of the decoded barcode.
+
+```java
+public String getText()
+```
+
+**Return value**
+
+Returns a string representing the text of the decoded barcode.
+
+### getBytes
+
+Gets the raw bytes of the decoded barcode.
+
+```java
+public byte[] getBytes()
+```
+
+**Return value**
+
+Returns the raw bytes of the decoded barcode.
+
+### getDetails
+
+Gets the details of the decoded barcode.
+
+```java
+public BarcodeDetails getDetails()
+```
+
+**Return value**
+
+Returns the details of the decoded barcode.
+
+**See Also**
+
+- [AztecDetails]({{ site.dbr_java_api }}aztec-details.html)
+- [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html)
+- [DataMatrixDetails]({{ site.dbr_java_api }}datamatrix-details.html)
+- [OneDCodeDetails]({{ site.dbr_java_api }}oned-code-details.html)
+- [PDF417Details]({{ site.dbr_java_api }}pdf417-details.html)
+- [QRCodeDetails]({{ site.dbr_java_api }}qr-code-details.html)
+
+### isDPM
+
+Determines whether the decoded barcode is a DPM (Direct Part Marking) code.
+
+```java
+public boolean isDPM()
+```
+
+**Return value**
+
+Returns true if the decoded barcode is a DPM code, false otherwise.
+
+### isMirrored
+
+Determines whether the decoded barcode is mirrored.
+
+```java
+public boolean isMirrored()
+```
+
+**Return value**
+
+Returns true if the decoded barcode is mirrored, false otherwise.
+
+### getAngle
+
+Gets the orientation angle of the barcode.
+
+```java
+public int getAngle()
+```
+
+**Return value**
+
+Returns the orientation angle of the barcode.
+
+### getModuleSize
+
+Gets the module size of the barcode.
+
+```java
+public int getModuleSize()
+```
+
+**Return value**
+
+Returns the module size of the barcode.
+
+### getConfidence
+
+Gets the confidence score of the barcode recognition result.
+
+```java
+public int getConfidence()
+```
+
+**Return value**
+
+Returns the confidence score of the barcode recognition result.
+
+### getExtendedBarcodeResultsCount
+
+Gets the number of extended barcode results for the decoded barcode.
+
+```java
+public int getExtendedBarcodeResultsCount()
+```
+
+**Return value**
+
+Returns the number of extended barcode results for the decoded barcode.
+
+### getExtendedBarcodeResult
+
+Gets the extended barcode result at the specified index for the decoded barcode.
+
+```java
+public ExtendedBarcodeResult getExtendedBarcodeResult(int index)
+```
+
+**Parameters**
+
+`index` The index of the extended barcode result to retrieve.
+
+**Return value**
+
+Returns an `ExtendedBarcodeResult` object at the specified index for the decoded barcode.
+
+**See Also**
+
+[ExtendedBarcodeResult]({{ site.dbr_java_api }}extended-barcode-result.html)
+
+### getExtendedBarcodeResults
+
+Gets all extended barcode results for the decoded barcode.
+
+```java
+public ExtendedBarcodeResult[] getExtendedBarcodeResults()
+```
+
+**Return value**
+
+Returns an array of `ExtendedBarcodeResult` objects for the decoded barcode.
+
+**See Also**
+
+[ExtendedBarcodeResult]({{ site.dbr_java_api }}extended-barcode-result.html)
+
+### setFormat
+
+Sets the format of the barcode.
+
+```java
+public void setFormat(@EnumBarcodeFormat long format)
+```
+
+**Parameters**
+
+`format` The format of the barcode. This is one of the values of the `EnumBarcodeFormat` enumeration.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### setText
+
+Sets the text of the barcode.
+
+```java
+public void setText(String text)
+```
+
+**Parameters**
+
+`text` The text of the barcode.
+
+### setBytes
+
+Sets the raw bytes of the barcode.
+
+```java
+public void setBytes(byte[] bytes)
+```
+
+**Parameters**
+
+`bytes` The raw bytes of the barcode.
+
+### setConfidence
+
+Sets the confidence of the barcode.
+
+```java
+public void setConfidence(int confidence)
+```
+
+**Parameters**
+
+`confidence` The confidence of the barcode.
+
+### setLocation
+
+Sets the location of the decoded barcode.
+
+```java
+public void setLocation(Quadrilateral location) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`location` The location of the decoded barcode.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the location.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+[BarcodeReaderException]({{ site.dbr_java_api }}barcode-reader-exception.html)
+
diff --git a/programming/java/api-reference/decoded-barcodes-result.md b/programming/java/api-reference/decoded-barcodes-result.md
new file mode 100644
index 00000000..d8bd6a3b
--- /dev/null
+++ b/programming/java/api-reference/decoded-barcodes-result.md
@@ -0,0 +1,73 @@
+---
+layout: default-layout
+title: DecodedBarcodesResult Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of DecodedBarcodesResult class in Dynamsoft Barcode Reader Java Edition.
+keywords: getItemsCount, getItem, getItems, DecodedBarcodesResult, api reference
+---
+# DecodedBarcodesResult Class
+
+The `DecodedBarcodesResult` class represents the result of a barcode reading process. It provides access to information about the decoded barcodes, the source image, and any errors that occurred during the barcode reading process.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [CapturedResultBase]({{ site.dcvb_java_api }}core/basic-classes/captured-result-base.html) -> DecodedBarcodesResult
+
+```java
+public class DecodedBarcodesResult extends CapturedResultBase
+```
+
+## Methods
+
+| Method | Description |
+|----------------------|-------------|
+| [`getItemsCount`](#getitemscount) | Gets the count of decoded barcode result items. |
+| [`getItem`](#getitem) | Gets the decoded barcode result item at the specified index. |
+| [`getItems`](#getitems) | Gets all the decoded barcode result items. |
+
+## Method Details
+
+### getItemsCount
+
+Gets the count of decoded barcode result items.
+
+```java
+public int getItemsCount()
+```
+
+**Return Value**
+
+Returns the count of decoded barcode result items.
+
+### getItem
+
+Gets the decoded barcode result item at the specified index.
+
+```java
+public BarcodeResultItem getItem(int index)
+```
+
+**Parameters**
+
+`index`: The index of the result item to retrieve.
+
+**Return Value**
+
+Returns the BarcodeResultItem at the specified index.
+
+### getItems
+
+Gets all the decoded barcode result items.
+
+```java
+public BarcodeResultItem[] getItems()
+```
+
+**Return Value**
+
+Returns an array of all BarcodeResultItem objects.
+
+**See Also**
+
+[BarcodeResultItem]({{ site.dbr_java_api }}barcode-result-item.html)
diff --git a/programming/java/api-reference/decoded-barcodes-unit.md b/programming/java/api-reference/decoded-barcodes-unit.md
new file mode 100644
index 00000000..d077a14a
--- /dev/null
+++ b/programming/java/api-reference/decoded-barcodes-unit.md
@@ -0,0 +1,114 @@
+---
+layout: default-layout
+title: DecodedBarcodesUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows DecodedBarcodesUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getCount, getDecodedBarcode, removeAllDecodedBarcodes, setDecodedBarcode, DecodedBarcodesUnit, api reference
+---
+# DecodedBarcodesUnit Class
+
+The `DecodedBarcodesUnit` class represents a unit that contains decoded barcode elements. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> DecodedBarcodesUnit
+
+```java
+public class DecodedBarcodesUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getCount`](#getcount) | Gets the number of decoded barcodes in the unit.|
+| [`getDecodedBarcode`](#getdecodedbarcode) | Gets the `DecodedBarcodeElement` object at the specified index.|
+| [`getDecodedBarcodes`](#getdecodedbarcodes) | Gets all decoded barcode elements.|
+| [`removeAllDecodedBarcodes`](#removealldecodedbarcodes) | Removes all the decoded barcodes in the unit.|
+| [`setDecodedBarcode`](#setdecodedbarcode) | Sets the decoded barcode.|
+
+### getCount
+
+Gets the number of decoded barcodes in the unit.
+
+```java
+public int getCount()
+```
+
+**Return value**
+
+Returns the number of decoded barcodes in the unit.
+
+### getDecodedBarcode
+
+Gets the `DecodedBarcodeElement` object at the specified index.
+
+```java
+public DecodedBarcodeElement getDecodedBarcode(int index) throws BarcodeReaderException
+```
+
+**Parameter**
+
+`index` The index of the desired `DecodedBarcodeElement` object.
+
+**Return value**
+
+Returns the `DecodedBarcodeElement` object at the specified index.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while retrieving the decoded barcode element.
+
+**See Also**
+
+[DecodedBarcodeElement]({{ site.dbr_java_api }}decoded-barcode-element.html)
+
+### getDecodedBarcodes
+
+Gets all decoded barcode elements.
+
+```java
+public DecodedBarcodeElement[] getDecodedBarcodes()
+```
+
+**Return value**
+
+Returns an array of all `DecodedBarcodeElement` objects.
+
+**See Also**
+
+[DecodedBarcodeElement]({{ site.dbr_java_api }}decoded-barcode-element.html)
+
+### removeAllDecodedBarcodes
+
+Removes all the decoded barcodes in the unit.
+
+```java
+public void removeAllDecodedBarcodes()
+```
+
+### setDecodedBarcode
+
+Sets the decoded barcode.
+
+```java
+public void setDecodedBarcode(DecodedBarcodeElement element) throws BarcodeReaderException
+public void setDecodedBarcode(DecodedBarcodeElement element, double[] matrixToOriginalImage) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`element` The decoded barcode element.
+
+`matrixToOriginalImage` The matrix to original image. The array length must be 9.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the decoded barcode element.
+
+`IllegalArgumentException` If the `matrixToOriginalImage` array length is not 9.
+
+**See Also**
+
+[DecodedBarcodeElement]({{ site.dbr_java_api }}decoded-barcode-element.html)
diff --git a/programming/java/api-reference/deformation-resisted-barcode-image-unit.md b/programming/java/api-reference/deformation-resisted-barcode-image-unit.md
new file mode 100644
index 00000000..7328b52a
--- /dev/null
+++ b/programming/java/api-reference/deformation-resisted-barcode-image-unit.md
@@ -0,0 +1,67 @@
+---
+layout: default-layout
+title: DeformationResistedBarcodeImageUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows DeformationResistedBarcodeImageUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getDeformationResistedBarcode, setDeformationResistedBarcode, DeformationResistedBarcodeImageUnit, api reference
+---
+# DeformationResistedBarcodeImageUnit Class
+
+The `DeformationResistedBarcodeImageUnit` class represents a unit that contains deformation resisted barcode image data. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> DeformationResistedBarcodeImageUnit
+
+```java
+public class DeformationResistedBarcodeImageUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getDeformationResistedBarcode`](#getdeformationresistedbarcode) | Gets the deformation resisted barcode object.|
+| [`setDeformationResistedBarcode`](#setdeformationresistedbarcode) | Sets the deformation resisted barcode object.|
+
+### getDeformationResistedBarcode
+
+Gets the deformation resisted barcode object.
+
+```java
+public DeformationResistedBarcode getDeformationResistedBarcode()
+```
+
+**Return value**
+
+Returns an instance of `DeformationResistedBarcode`.
+
+**See Also**
+
+[DeformationResistedBarcode]({{ site.dbr_java_api }}deformation-resisted-barcode.html)
+
+### setDeformationResistedBarcode
+
+Sets the deformation resisted barcode object.
+
+```java
+public void setDeformationResistedBarcode(DeformationResistedBarcode barcode) throws BarcodeReaderException
+public void setDeformationResistedBarcode(DeformationResistedBarcode barcode, double[] matrixToOriginalImage) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`barcode` The deformation resisted barcode object.
+
+`matrixToOriginalImage` The matrix to original image. The array length must be 9.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the deformation resisted barcode.
+
+`IllegalArgumentException` If the `matrixToOriginalImage` array length is not 9.
+
+**See Also**
+
+[DeformationResistedBarcode]({{ site.dbr_java_api }}deformation-resisted-barcode.html)
diff --git a/programming/java/api-reference/deformation-resisted-barcode.md b/programming/java/api-reference/deformation-resisted-barcode.md
new file mode 100644
index 00000000..dade7114
--- /dev/null
+++ b/programming/java/api-reference/deformation-resisted-barcode.md
@@ -0,0 +1,152 @@
+---
+layout: default-layout
+title: DeformationResistedBarcode Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows DeformationResistedBarcode class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getLocation, setLocation, getFormat, setFormat, getImageData, setImageData, DeformationResistedBarcode, api reference
+---
+# DeformationResistedBarcode Class
+
+The `DeformationResistedBarcode` class represents a deformation resisted barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+```java
+public class DeformationResistedBarcode
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`DeformationResistedBarcode`](#deformationresistedbarcode) | Initializes a new instance of the `DeformationResistedBarcode` class. |
+| [`getFormat`](#getformat) | Gets the format of the deformation resisted barcode. |
+| [`setFormat`](#setformat) | Sets the format of the deformation resisted barcode. |
+| [`getImageData`](#getimagedata) | Gets the deformation resisted barcode image. |
+| [`setImageData`](#setimagedata) | Sets the deformation resisted barcode image. |
+| [`getLocation`](#getlocation) | Gets the location of the deformation resisted barcode.|
+| [`setLocation`](#setlocation) | Sets the location of the deformation resisted barcode.|
+
+
+### DeformationResistedBarcode
+
+Initializes a new instance of the `DeformationResistedBarcode` class.
+
+```java
+public DeformationResistedBarcode()
+public DeformationResistedBarcode(ImageData img, Quadrilateral location, long format)
+```
+
+**Parameters**
+
+`img` The barcode image data.
+
+`location` The location of the deformation resisted barcode.
+
+`format` The format of the deformation resisted barcode.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### getFormat
+
+Gets the format of the deformation resisted barcode.
+
+```java
+public @EnumBarcodeFormat long getFormat()
+```
+
+**Return value**
+
+Returns the format of the deformation resisted barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### setFormat
+
+Sets the format of the deformation resisted barcode.
+
+```java
+public void setFormat(long format)
+```
+
+**Parameters**
+
+`format` The format of the deformation resisted barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### getImageData
+
+Gets the deformation resisted barcode image.
+
+```java
+public ImageData getImageData()
+```
+
+**Return value**
+
+Returns the deformation resisted barcode image.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+
+### setImageData
+
+Sets the deformation resisted barcode image.
+
+```java
+public void setImageData(ImageData imgData)
+```
+
+**Parameters**
+
+`imgData` The deformation resisted barcode image.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+
+### getLocation
+
+Gets the location of the deformation resisted barcode.
+
+```java
+public Quadrilateral getLocation()
+```
+
+**Return value**
+
+Returns the location of the deformation resisted barcode.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+### setLocation
+
+Sets the location of the deformation resisted barcode.
+
+```java
+public void setLocation(Quadrilateral location)
+```
+
+**Parameters**
+
+`location` The location of the deformation resisted barcode.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
diff --git a/programming/java/api-reference/enum-barcode-format.md b/programming/java/api-reference/enum-barcode-format.md
new file mode 100644
index 00000000..6cc3e317
--- /dev/null
+++ b/programming/java/api-reference/enum-barcode-format.md
@@ -0,0 +1,117 @@
+---
+layout: default-layout
+title: BarcodeFormat - Dynamsoft Barcode Reader Java Enumerations
+description: The enumeration BarcodeFormat of Dynamsoft Barcode Reader defines the supported barcode formats.
+keywords: Barcode formats
+codeAutoHeight: true
+---
+
+# Enumeration BarcodeFormat
+
+`BarcodeFormat` defines the supported barcode formats.
+
+```java
+@Retention(RetentionPolicy.CLASS)
+public @interface EnumBarcodeFormat {
+ //All supported formats in BarcodeFormat
+ long BF_ALL = 0xFFFFFFFEFFFFFFFFL;
+ //The default barcode format settings. It's a combined value of BF_ONED, BF_GS1_DATABAR, BF_PDF417, BF_QR_CODE, BF_DATAMATRIX, BF_AZTEC, BF_MAXICODE, BF_MICRO_QR, BF_MICRO_PDF417, BF_GS1_COMPOSITE
+ long BF_DEFAULT = 0xFE3BFFFFL;
+ //Combined value of BF_CODABAR, BF_CODE_128, BF_CODE_39, BF_CODE_39_EXTENDED, BF_CODE_93, BF_EAN_13, BF_EAN_8, INDUSTRIAL_25, BF_ITF, BF_UPC_A, BF_UPC_E, BF_MSI_CODE, BF_CODE_11;
+ long BF_ONED = 0x003007FFL;
+ //Combined value of BF_GS1_DATABAR_OMNIDIRECTIONAL, BF_GS1_DATABAR_TRUNCATED, BF_GS1_DATABAR_STACKED, BF_GS1_DATABAR_STACKED_OMNIDIRECTIONAL,BF_GS1_DATABAR_EXPANDED, BF_GS1_DATABAR_EXPANDED_STACKED, BF_GS1_DATABAR_LIMITED
+ long BF_GS1_DATABAR = 0x0003F800L;
+ //Combined value of BF_USPSINTELLIGENTMAIL, BF_POSTNET, BF_PLANET, BF_AUSTRALIANPOST, BF_RM4SCC, BF_KIX.
+ long BF_POSTALCODE = 0x3F0000000000000L;
+ //Code 39
+ long BF_CODE_39 = 0x1L;
+ //Code 128
+ long BF_CODE_128 = 0x2L;
+ //Code 93
+ long BF_CODE_93 = 0x4L;
+ //Codabar
+ long BF_CODABAR = 0x8L;
+ //Interleaved 2 of 5
+ long BF_ITF = 0x10L;
+ //EAN-13
+ long BF_EAN_13 = 0x20L;
+ //EAN-8
+ long BF_EAN_8 = 0x40L;
+ //UPC-A
+ long BF_UPC_A = 0x80L;
+ //UPC-E
+ long BF_UPC_E = 0x100L;
+ //Industrial 2 of 5
+ long BF_INDUSTRIAL_25 = 0x200L;
+ //CODE39 Extended
+ long BF_CODE_39_EXTENDED = 0x400L;
+ //GS1 Databar Omnidirectional
+ long BF_GS1_DATABAR_OMNIDIRECTIONAL = 0x800L;
+ //GS1 Databar Truncated
+ long BF_GS1_DATABAR_TRUNCATED = 0x1000L;
+ //GS1 Databar Stacked
+ long BF_GS1_DATABAR_STACKED = 0x2000L;
+ //GS1 Databar Stacked Omnidirectional
+ long BF_GS1_DATABAR_STACKED_OMNIDIRECTIONAL = 0x4000L;
+ //GS1 Databar Expanded
+ long BF_GS1_DATABAR_EXPANDED = 0x8000L;
+ //GS1 Databar Expaned Stacked
+ long BF_GS1_DATABAR_EXPANDED_STACKED = 0x10000L;
+ //GS1 Databar Limited
+ long BF_GS1_DATABAR_LIMITED = 0x20000L;
+ //Patch code
+ long BF_PATCHCODE = 0x00040000L;
+ //Code 32
+ long BF_CODE_32 = 0x1000000L;
+ //PDF417
+ long BF_PDF417 = 0x02000000L;
+ //QRCode
+ long BF_QR_CODE = 0x04000000L;
+ //DataMatrix
+ long BF_DATAMATRIX = 0x08000000L;
+ //AZTEC
+ long BF_AZTEC = 0x10000000L;
+ //MAXICODE
+ long BF_MAXICODE = 0x20000000L;
+ //Micro QR Code
+ long BF_MICRO_QR = 0x40000000L;
+ //Micro PDF417
+ long BF_MICRO_PDF417 = 0x00080000L;
+ //GS1 Composite Code
+ long BF_GS1_COMPOSITE = 0x80000000L;
+ //MSI Code
+ long BF_MSI_CODE = 0x100000L;
+ //Code 11
+ long BF_CODE_11 = 0x200000L;
+ //Decode barcode with 2 digital addons
+ long BF_TWO_DIGIT_ADD_ON = 0x400000L;
+ //Decode barcode with 5 digital addons
+ long BF_FIVE_DIGIT_ADD_ON = 0x800000L;
+ //Matrix 25
+ long BF_MATRIX_25 = 0x1000000000L;
+ //Nonstandard barcode
+ long BF_NONSTANDARD_BARCODE = 0x100000000L;
+ //USPS Intelligent Mail.
+ long BF_USPSINTELLIGENTMAIL = 0x10000000000000L;
+ //Postnet.
+ long BF_POSTNET = 0x20000000000000L;
+ //Planet.
+ long BF_PLANET = 0x40000000000000L;
+ //Australian Post.
+ long BF_AUSTRALIANPOST = 0x80000000000000L;
+ //Royal Mail 4-State Customer Barcode.
+ long BF_RM4SCC = 0x100000000000000L;
+ //KIX.
+ long BF_KIX = 0x200000000000000L;
+ //DotCode.
+ long BF_DOTCODE = 0x200000000L;
+ //_PHARMACODE_ONE_TRACK.
+ long BF_PHARMACODE_ONE_TRACK = 0x400000000L;
+ //PHARMACODE_TWO_TRACK.
+ long BF_PHARMACODE_TWO_TRACK = 0x800000000L;
+ //PHARMACODE.
+ long BF_PHARMACODE = 0xC00000000L;
+ //No barcode format in BarcodeFormat
+ long BF_NULL = 0x00L;
+}
+```
diff --git a/programming/java/api-reference/enum-deblur-mode.md b/programming/java/api-reference/enum-deblur-mode.md
new file mode 100644
index 00000000..81590a33
--- /dev/null
+++ b/programming/java/api-reference/enum-deblur-mode.md
@@ -0,0 +1,43 @@
+---
+layout: default-layout
+title: DeblurMode - Dynamsoft Barcode Reader Java Enumerations
+description: The enumeration DeblurMode of Dynamsoft Barcode Reader describes deblur modes that implemented on the localized barcodes.
+keywords: Deblur mode
+codeAutoHeight: true
+---
+
+# Enumeration DeblurMode
+
+`DeblurMode` specifies the image processing algorithms applied to the localized zones containing barcodes, aimed at generating a binary image for extracting barcode data during the final phase of the barcode decoding process.
+
+```java
+@Retention(RetentionPolicy.CLASS)
+public @interface EnumDeblurMode {
+ //Performs deblur process using the direct binarization algorithm.
+ int DM_DIRECT_BINARIZATION = 0x01;
+ //Performs deblur process using the threshold binarization algorithm.
+ int DM_THRESHOLD_BINARIZATION = 0x02;
+ //Performs deblur process using the gray equalization algorithm.
+ int DM_GRAY_EQUALIZATION = 0x04;
+ //Performs deblur process using the smoothing algorithm.
+ int DM_SMOOTHING = 0x08;
+ //Performs deblur process using the morphing algorithm.
+ int DM_MORPHING = 0x10;
+ //Performs deblur process using the deep analysis algorithm.
+ int DM_DEEP_ANALYSIS = 0x20;
+ //Performs deblur process using the sharpening algorithm.
+ int DM_SHARPENING = 0x40;
+ //Performs deblur process based on the binary image from the localization process.
+ int DM_BASED_ON_LOC_BIN = 0x80;
+ //Performs deblur process using the sharpening and smoothing algorithm.
+ int DM_SHARPENING_SMOOTHING = 0x100;
+ //Performs deblur process using the neural network algorithm.
+ int DM_NEURAL_NETWORK = 0x200;
+ //Reserved setting for deblur mode.
+ int DM_REV = 0x80000000;
+ //End marker for deblur mode.
+ int DM_END = 0xFFFFFFFF;
+ //Skips the deblur process.
+ int DM_SKIP = 0x00;
+}
+```
diff --git a/programming/java/api-reference/enum-extended-barcode-result-type.md b/programming/java/api-reference/enum-extended-barcode-result-type.md
new file mode 100644
index 00000000..4188fe50
--- /dev/null
+++ b/programming/java/api-reference/enum-extended-barcode-result-type.md
@@ -0,0 +1,23 @@
+---
+layout: default-layout
+title: ExtendedBarcodeResultType - Dynamsoft Barcode Reader Java Enumerations
+description: The enumeration ExtendedBarcodeResultType of Dynamsoft Barcode Reader describes the type of the extended barcode result.
+keywords: Extended barcode result type
+codeAutoHeight: true
+---
+
+# Enumeration ExtendedBarcodeResultType
+
+`ExtendedBarcodeResultType` determines the type of text result returned from a barcode scan.
+
+```java
+@Retention(RetentionPolicy.CLASS)
+public @interface EnumExtendedBarcodeResultType {
+ //Specifies the standard text. This means the barcode value.
+ int EBRT_STANDARD_RESULT = 0;
+ //Specifies all the candidate text. This means all the standard text results decoded from the barcode.
+ int EBRT_CANDIDATE_RESULT = 1;
+ //Specifies the partial text. This means part of the text result decoded from the barcode.
+ int EBRT_PARTIAL_RESULT = 2;
+}
+```
diff --git a/programming/java/api-reference/enum-localization-mode.md b/programming/java/api-reference/enum-localization-mode.md
new file mode 100644
index 00000000..0822a8a8
--- /dev/null
+++ b/programming/java/api-reference/enum-localization-mode.md
@@ -0,0 +1,41 @@
+---
+layout: default-layout
+title: LocalizationMode - Dynamsoft Barcode Reader Java Enumerations
+description: The enumeration LocalizationMode of Dynamsoft Barcode Reader describes the localization modes of the barcodes.
+keywords: Localization mode
+codeAutoHeight: true
+---
+
+# Enumeration LocalizationMode
+
+`LocalizationMode` specifies the strategies used to identify the locations of barcodes within an image.
+
+```java
+@Retention(RetentionPolicy.CLASS)
+public @interface EnumLocalizationMode {
+ //Not supported yet.
+ int LM_AUTO = 0x01;
+ //Localizes barcodes by searching for connected blocks. This algorithm usually gives best result and it is recommended to set ConnectedBlocks to the highest priority.
+ int LM_CONNECTED_BLOCKS = 0x02;
+ //Localizes barcodes by groups of contiguous black-white regions. This is optimized for QRCode and DataMatrix.
+ int LM_STATISTICS = 0x04;
+ //Localizes barcodes by searching for groups of lines. This is optimized for 1D and PDF417 barcodes.
+ int LM_LINES = 0x08;
+ //Localizes barcodes quickly. This mode is recommended in interactive scenario.
+ int LM_SCAN_DIRECTLY = 0x10;
+ //Localizes barcodes by groups of marks.This is optimized for DPM codes.
+ int LM_STATISTICS_MARKS = 0x20;
+ //Localizes barcodes by groups of connected blocks and lines.This is optimized for postal codes.
+ int LM_STATISTICS_POSTAL_CODE = 0x40;
+ //Localizes barcodes from the centre of the image.
+ int LM_CENTRE = 0x80;
+ //Localizes 1D barcodes fast.
+ int LM_ONED_FAST_SCAN = 0x100;
+ //Reserved setting for localization mode.
+ int LM_REV = 0x80000000;
+ //End marker for localization mode.
+ int LM_END = 0xFFFFFFFF;
+ //Skips localization.
+ int LM_SKIP = 0x00;
+}
+```
diff --git a/programming/java/api-reference/enum-qr-code-error-correction-level.md b/programming/java/api-reference/enum-qr-code-error-correction-level.md
new file mode 100644
index 00000000..9c71e4c0
--- /dev/null
+++ b/programming/java/api-reference/enum-qr-code-error-correction-level.md
@@ -0,0 +1,25 @@
+---
+layout: default-layout
+title: QRCodeErrorCorrectionLevel - Dynamsoft Barcode Reader Java Enumerations
+description: The enumeration QRCodeErrorCorrectionLevel of Dynamsoft Barcode Reader describes the error correction level when processing the QR code.
+keywords: QR code error correction level
+codeAutoHeight: true
+---
+
+# Enumeration QRCodeErrorCorrectionLevel
+
+`QRCodeErrorCorrectionLevel` describes the error correction level when processing the QR code.
+
+```java
+@Retention(RetentionPolicy.CLASS)
+public @interface EnumQRCodeErrorCorrectionLevel {
+ //Error Correction Level H (high)
+ int QRECL_ERROR_CORRECTION_H = 0;
+ //Error Correction Level L (low)
+ int QRECL_ERROR_CORRECTION_L = 1;
+ //Error Correction Level M (medium-low)
+ int QRECL_ERROR_CORRECTION_M = 2;
+ //Error Correction Level Q (medium-high)
+ int QRECL_ERROR_CORRECTION_Q = 3;
+}
+```
diff --git a/programming/java/api-reference/extended-barcode-result.md b/programming/java/api-reference/extended-barcode-result.md
new file mode 100644
index 00000000..21cded26
--- /dev/null
+++ b/programming/java/api-reference/extended-barcode-result.md
@@ -0,0 +1,84 @@
+---
+layout: default-layout
+title: ExtendedBarcodeResult Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows ExtendedBarcodeResult class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getDeformation, getClarity, getSamplingImage, getExtendedBarcodeResultType, ExtendedBarcodeResult, api reference
+---
+# ExtendedBarcodeResult Class
+
+The `ExtendedBarcodeResult` class represents an extended barcode result in a decoded barcode element. It contains information such as the type of extended barcode, deformation, clarity, and a sampling image of the barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [DecodedBarcodeElement]({{ site.dbr_java_api }}decoded-barcode-element.html) -> ExtendedBarcodeResult
+
+```java
+public class ExtendedBarcodeResult extends DecodedBarcodeElement
+```
+
+## Methods
+
+| Method | Description |
+|--------|-------------|
+| [`getExtendedBarcodeResultType`](#getextendedbarcoderesulttype) | Gets the type of extended barcode result. |
+| [`getDeformation`](#getdeformation) | Gets the deformation of the barcode. |
+| [`getClarity`](#getclarity) | Gets the clarity of the barcode. |
+| [`getSamplingImage`](#getsamplingimage) | Gets the sampling image of the barcode. |
+
+### getExtendedBarcodeResultType
+
+Gets the type of extended barcode result.
+
+```java
+public @EnumExtendedBarcodeResultType int getExtendedBarcodeResultType()
+```
+
+**Return value**
+
+Returns the type of the extended barcode result. This is one of the values of the `EnumExtendedBarcodeResultType` enumeration.
+
+**See Also**
+
+[EnumExtendedBarcodeResultType]({{ site.dbr_java_api }}enum-extended-barcode-result-type.html)
+
+### getDeformation
+
+Gets the deformation of the barcode.
+
+```java
+public int getDeformation()
+```
+
+**Return value**
+
+Returns the deformation of the barcode.
+
+### getClarity
+
+Gets the clarity of the barcode.
+
+```java
+public int getClarity()
+```
+
+**Return value**
+
+Returns the clarity of the barcode.
+
+### getSamplingImage
+
+Gets the sampling image of the barcode.
+
+```java
+public ImageData getSamplingImage()
+```
+
+**Return value**
+
+Returns an `ImageData` object representing the sampling image of the barcode.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
diff --git a/programming/java/api-reference/index.md b/programming/java/api-reference/index.md
new file mode 100644
index 00000000..e4269856
--- /dev/null
+++ b/programming/java/api-reference/index.md
@@ -0,0 +1,170 @@
+---
+layout: default-layout
+title: Dynamsoft Barcode Reader Java Edition API Reference - Main Page
+description: This is the main page of Dynamsoft Barcode Reader SDK API Reference for Java Edition.
+keywords: api reference, java
+needAutoGenerateSidebar: false
+---
+
+# API Reference - Java
+
+## DynamsoftCaptureVisionRouter
+
+### [CaptureVisionRouter]({{ site.dcvb_java_api }}capture-vision-router/capture-vision-router.html)
+
+- [`Constructor`]({{ site.dcvb_java_api }}capture-vision-router/instantiate.html)
+- [`Single-File Processing`]({{ site.dcvb_java_api }}capture-vision-router/single-file-processing.html)
+- [`Multiple-File Processing`]({{ site.dcvb_java_api }}capture-vision-router/multiple-file-processing.html)
+- [`Settings`]({{ site.dcvb_java_api }}capture-vision-router/settings.html)
+- [`Buffered Items`]({{ site.dcvb_java_api }}capture-vision-router/buffered-items.html)
+- [`Intermediate Result`]({{ site.dcvb_java_api }}capture-vision-router/intermediate-result.html)
+
+### Classes
+
+- [`BufferedItemsManager`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/buffered-items-manager.html)
+- [`CapturedResult`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/captured-result.html)
+- [`CapturedResultFilter`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/captured-result-filter.html)
+- [`CapturedResultReceiver`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html)
+- [`CaptureStateListener`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/capture-state-listener.html)
+- [`CaptureVisionRouterModule`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/capture-vision-router-module.html)
+- [`ImageSourceStateListener`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/image-source-state-listener.html)
+- [`IntermediateResultManager`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/intermediate-result-manager.html)
+- [`IntermediateResultReceiver`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/intermediate-result-receiver.html)
+- [`SimplifiedCaptureVisionSettings`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/simplified-capture-vision-settings.html)
+
+### Enums
+
+- [`EnumCaptureState`]({{ site.dcvb_java_api }}capture-vision-router/enum-capture-state.html)
+- [`EnumImageSourceState`]({{ site.dcvb_java_api }}capture-vision-router/enum-image-source-state.html)
+- [`EnumPresetTemplate`]({{ site.dcvb_java_api }}capture-vision-router/enum-preset-template.html)
+
+## DynamsoftBarcodeReader
+
+### Classes
+
+- [`AztecDetails`]({{ site.dbr_java_api }}aztec-details.html)
+- [`BarcodeDetails`]({{ site.dbr_java_api }}barcode-details.html)
+- [`BarcodeReaderModule`]({{ site.dbr_java_api }}barcode-reader-module.html)
+- [`BarcodeResultItem`]({{ site.dbr_java_api }}barcode-result-item.html)
+- [`CandidateBarcodeZone`]({{ site.dbr_java_api }}candidate-barcode-zone.html)
+- [`CandidateBarcodeZonesUnit`]({{ site.dbr_java_api }}candidate-barcode-zones-unit.html)
+- [`ComplementedBarcodeImageUnit`]({{ site.dbr_java_api }}complemented-barcode-image-unit.html)
+- [`DataMatrixDetails`]({{ site.dbr_java_api }}datamatrix-details.html)
+- [`DecodedBarcodeElement`]({{ site.dbr_java_api }}decoded-barcode-element.html)
+- [`DecodedBarcodesResult`]({{ site.dbr_java_api }}decoded-barcodes-result.html)
+- [`DecodedBarcodesUnit`]({{ site.dbr_java_api }}decoded-barcodes-unit.html)
+- [`DeformationResistedBarcodeImageUnit`]({{ site.dbr_java_api }}deformation-resisted-barcode-image-unit.html)
+- [`DeformationResistedBarcode`]({{ site.dbr_java_api }}deformation-resisted-barcode.html)
+- [`ExtendedBarcodeResult`]({{ site.dbr_java_api }}extended-barcode-result.html)
+- [`LocalizedBarcodeElement`]({{ site.dbr_java_api }}localized-barcode-element.html)
+- [`LocalizedBarcodesUnit`]({{ site.dbr_java_api }}localized-barcodes-unit.html)
+- [`OneDCodeDetails`]({{ site.dbr_java_api }}oned-code-details.html)
+- [`PDF417Details`]({{ site.dbr_java_api }}pdf417-details.html)
+- [`QRCodeDetails`]({{ site.dbr_java_api }}qr-code-details.html)
+- [`ScaledBarcodeImageUnit`]({{ site.dbr_java_api }}scaled-barcode-image-unit.html)
+- [`SimplifiedBarcodeReaderSettings`]({{ site.dbr_java_api }}simplified-barcode-reader-settings.html)
+
+### Enums
+
+- [`EnumBarcodeFormat`]({{ site.dbr_java_api }}enum-barcode-format.html)
+- [`EnumDeblurMode`]({{ site.dbr_java_api }}enum-deblur-mode.html)
+- [`EnumExtendedBarcodeResultType`]({{ site.dbr_java_api }}enum-extended-barcode-result-type.html)
+- [`EnumLocalizationMode`]({{ site.dbr_java_api }}enum-localization-mode.html)
+- [`EnumQRCodeErrorCorrectionLevel`]({{ site.dbr_java_api }}enum-qr-code-error-correction-level.html)
+
+## DynamsoftCore
+
+### Classes
+
+- [`AbstractIntermediateResultReceiver`]({{ site.dcvb_java_api }}core/intermediate-results/abstract-intermediate-result-receiver.html)
+- [`BinaryImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/binary-image-unit.html)
+- [`CapturedResultBase`]({{ site.dcvb_java_api }}core/basic-classes/captured-result-base.html)
+- [`CapturedResultItem`]({{ site.dcvb_java_api }}core/basic-classes/captured-result-item.html)
+- [`ColourImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/colour-image-unit.html)
+- [`ContoursUnit`]({{ site.dcvb_java_api }}core/intermediate-results/contours-unit.html)
+- [`Contour`]({{ site.dcvb_java_api }}core/basic-classes/contour.html)
+- [`CoreModule`]({{ site.dcvb_java_api }}core/basic-classes/core-module.html)
+- [`Corner`]({{ site.dcvb_java_api }}core/basic-classes/corner.html)
+- [`Edge`]({{ site.dcvb_java_api }}core/basic-classes/edge.html)
+- [`EnhancedGrayscaleImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/enhanced-grayscale-image-unit.html)
+- [`FileImageTag`]({{ site.dcvb_java_api }}core/basic-classes/file-image-tag.html)
+- [`GrayscaleImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/grayscale-image-unit.html)
+- [`ImageData`]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+- [`ImageSourceAdapter`]({{ site.dcvb_java_api }}core/basic-classes/image-source-adapter.html)
+- [`ImageSourceErrorListener`]({{ site.dcvb_java_api }}core/basic-classes/image-source-error-listener.html)
+- [`ImageTag`]({{ site.dcvb_java_api }}core/basic-classes/image-tag.html)
+- [`IntermediateResultExtraInfo`]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-extra-info.html)
+- [`IntermediateResultUnit`]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html)
+- [`IntermediateResult`]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result.html)
+- [`LineSegmentsUnit`]({{ site.dcvb_java_api }}core/intermediate-results/line-segments-unit.html)
+- [`LineSegment`]({{ site.dcvb_java_api }}core/basic-classes/line-segment.html)
+- [`ObservationParameters`]({{ site.dcvb_java_api }}core/intermediate-results/observed-parameters.html)
+- [`OriginalImageResultItem`]({{ site.dcvb_java_api }}core/basic-classes/original-image-result-item.html)
+- [`PDFReadingParameter`]({{ site.dcvb_java_api }}core/basic-classes/pdf-reading-parameter.html)
+- [`Point`]({{ site.dcvb_java_api }}core/basic-classes/point.html)
+- [`PredetectedRegionElement`]({{ site.dcvb_java_api }}core/intermediate-results/predetected-region-element.html)
+- [`PredetectedRegionsUnit`]({{ site.dcvb_java_api }}core/intermediate-results/predetected-regions-unit.html)
+- [`Quadrilateral`]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+- [`Rect`]({{ site.dcvb_java_api }}core/basic-classes/rect.html)
+- [`RegionObjectElement`]({{ site.dcvb_java_api }}core/intermediate-results/region-object-element.html)
+- [`ScaledColourImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/scaled-colour-image-unit.html)
+- [`ShortLinesUnit`]({{ site.dcvb_java_api }}core/intermediate-results/short-lines-unit.html)
+- [`TextRemovedBinaryImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/text-removed-binary-image-unit.html)
+- [`TextZone`]({{ site.dcvb_java_api }}core/intermediate-results/text-zone.html)
+- [`TextZonesUnit`]({{ site.dcvb_java_api }}core/intermediate-results/text-zones-unit.html)
+- [`TextureDetectionResultUnit`]({{ site.dcvb_java_api }}core/intermediate-results/texture-detection-result-unit.html)
+- [`TextureRemovedBinaryImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/texture-removed-binary-image-unit.html)
+- [`TextureRemovedGrayscaleImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/texture-removed-grayscale-image-unit.html)
+- [`TransformedGrayscaleImageUnit`]({{ site.dcvb_java_api }}core/intermediate-results/transformed-grayscale-image-unit.html)
+- [`Vector4`]({{ site.dcvb_java_api }}core/basic-classes/vector4.html)
+- [`VideoFrameTag`]({{ site.dcvb_java_api }}core/basic-classes/video-frame-tag.html)
+
+### Enums
+
+- [`EnumBufferOverflowProtectionMode`]({{ site.dcvb_java_api }}core/enum-buffer-overflow-protection-mode.html)
+- [`EnumCapturedResultItemType`]({{ site.dcvb_java_api }}core/enum-captured-result-item-type.html)
+- [`EnumColourChannelUsageType`]({{ site.dcvb_java_api }}core/enum-colour-channel-usage-type.html)
+- [`EnumCornerType`]({{ site.dcvb_java_api }}core/enum-corner-type.html)
+- [`EnumCrossVerificationStatus`]({{ site.dcvb_java_api }}core/enum-cross-verification-status.html)
+- [`EnumErrorCode`]({{ site.dcvb_java_api }}core/enum-error-code.html)
+- [`EnumGrayscaleEnhancementMode`]({{ site.dcvb_java_api }}core/enum-grayscale-enhancement-mode.html)
+- [`EnumGrayscaleTransformationMode`]({{ site.dcvb_java_api }}core/enum-grayscale-transformation-mode.html)
+- [`EnumImageCaptureDistanceMode`]({{ site.dcvb_java_api }}core/enum-image-capture-distance-mode.html)
+- [`EnumImageFileFormat`]({{ site.dcvb_java_api }}core/enum-image-file-format.html)
+- [`EnumImagePixelFormat`]({{ site.dcvb_java_api }}core/enum-image-pixel-format.html)
+- [`EnumImageTagType`]({{ site.dcvb_java_api }}core/enum-image-tag-type.html)
+- [`IntermediateResultUnitType`]({{ site.dcvb_java_api }}core/enum-intermediate-result-unit-type.html)
+- [`EnumPDFReadingMode`]({{ site.dcvb_java_api }}core/enum-pdf-reading-mode.html)
+- [`EnumRasterDataSource`]({{ site.dcvb_java_api }}core/enum-raster-data-source.html)
+- [`EnumRegionObjectElementType`]({{ site.dcvb_java_api }}core/enum-region-object-element-type.html)
+- [`EnumSectionType`]({{ site.dcvb_java_api }}core/enum-section-type.html)
+- [`EnumTransformMatrixType`]({{ site.dcvb_java_api }}core/enum-transform-matrix-type.html)
+- [`EnumVideoFrameQuality`]({{ site.dcvb_java_api }}core/enum-video-frame-quality.html)
+
+## DynamsoftUtility
+
+### Classes
+
+- [`DirectoryFetcher`]({{ site.dcvb_java_api }}utility/directory-fetcher.html)
+- [`FileFetcher`]({{ site.dcvb_java_api }}utility/file-fetcher.html)
+- [`ImageIO`]({{ site.dcvb_java_api }}utility/image-io.html)
+- [`ImageProcessor`]({{ site.dcvb_java_api }}utility/image-processor.html)
+- [`ImageDrawer`]({{ site.dcvb_java_api }}utility/image-drawer.html)
+- [`MultiFrameResultCrossFilter`]({{ site.dcvb_java_api }}utility/multi-frame-result-cross-filter.html)
+- [`ProactiveImageSourceAdapter`]({{ site.dcvb_java_api }}utility/proactive-image-source-adapter.html)
+- [`UtilityModule`]({{ site.dcvb_java_api }}utility/utility-module.html)
+
+### Enums
+
+- [`FilterType`]({{ site.dcvb_java_api }}utility/enum-filter-type.html)
+
+## DynamsoftLicense
+
+- [`LicenseManager`]({{ site.dcvb_java_api }}license/license-manager.html)
+- [`LicenseModule`]({{ site.dcvb_java_api }}license/license-module.html)
+
+
+## DynamsoftImageProcessing
+
+- [`ImageProcessingModule`]({{ site.dcvb_java_api }}image-processing/image-processing-module.html)
+
diff --git a/programming/java/api-reference/localized-barcode-element.md b/programming/java/api-reference/localized-barcode-element.md
new file mode 100644
index 00000000..f72e9aac
--- /dev/null
+++ b/programming/java/api-reference/localized-barcode-element.md
@@ -0,0 +1,142 @@
+---
+layout: default-layout
+title: LocalizedBarcodeElement Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows LocalizedBarcodeElement class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getAngle, getConfidence, getPossibleFormats, getPossibleFormatsString, getModuleSize, setPossibleFormats, LocalizedBarcodeElement, api reference
+---
+# LocalizedBarcodeElement Class
+
+The `LocalizedBarcodeElement` class represents a localized barcode element detected in an image. It is inherited from `RegionObjectElement` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [RegionObjectElement]({{ site.dcvb_java_api }}core/intermediate-results/region-object-element.html) -> LocalizedBarcodeElement
+
+```java
+public class LocalizedBarcodeElement extends RegionObjectElement
+```
+
+## Methods
+
+| Method | Description |
+|--------|-------------|
+| [`LocalizedBarcodeElement`](#localizedbarcodeelement) | Initializes a new instance of the `LocalizedBarcodeElement` class. |
+| [`getAngle`](#getangle) | Gets the orientation angle of the barcode. |
+| [`getConfidence`](#getconfidence) | Gets the confidence score of the barcode localization result. |
+| [`getPossibleFormats`](#getpossibleformats) | Gets the possible format of the barcode. |
+| [`getPossibleFormatsString`](#getpossibleformatsstring) | Get all possible formats of the localized barcode in one string splited by ",". |
+| [`getModuleSize`](#getmodulesize) | Gets the module size of the barcode. |
+| [`setPossibleFormats`](#setpossibleformats) | Sets the posssible formats of the barcode. |
+| [`setLocation`](#setlocation) | Sets the location of the localized barcode. |
+
+### LocalizedBarcodeElement
+
+Initializes a new instance of the `LocalizedBarcodeElement` class.
+
+```java
+public LocalizedBarcodeElement()
+```
+
+### getAngle
+
+Gets the orientation angle of the barcode.
+
+```java
+public int getAngle()
+```
+
+**Return value**
+
+Returns the orientation angle of the barcode.
+
+### getConfidence
+
+Gets the confidence score of the barcode localization result.
+
+```java
+public int getConfidence()
+```
+
+**Return value**
+
+Returns the confidence score of the barcode recognition result. It represents the confidence that the positioning area is a barcode.
+
+### getPossibleFormats
+
+Gets the format of the barcode.
+
+```java
+public long getPossibleFormats()
+```
+
+**Return value**
+
+Returns the format of the barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### getPossibleFormatsString
+
+Gets all possible formats of the localized barcode in one string splited by ",".
+
+```java
+public String getPossibleFormatsString()
+```
+
+**Return value**
+
+Returns the string representation of the barcode format in one string splited by ",".
+
+### getModuleSize
+
+Gets the module size of the barcode.
+
+```java
+public int getModuleSize()
+```
+
+**Return value**
+
+Returns the module size of the barcode.
+
+### setPossibleFormats
+
+Sets the posssible formats of the barcode.
+
+```java
+public void setPossibleFormats(long possibleFormats)
+```
+
+**Parameters**
+
+`possibleFormats` The posssible formats of the barcode.
+
+**See Also**
+
+[EnumBarcodeFormat]({{ site.dbr_java_api }}enum-barcode-format.html)
+
+### setLocation
+
+Sets the location of the localized barcode.
+
+```java
+public void setLocation(Quadrilateral location) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`location` The location of the localized barcode.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the location.
+
+**See Also**
+
+[Quadrilateral]({{ site.dcvb_java_api }}core/basic-classes/quadrilateral.html)
+
+[BarcodeReaderException]({{ site.dbr_java_api }}barcode-reader-exception.html)
\ No newline at end of file
diff --git a/programming/java/api-reference/localized-barcodes-unit.md b/programming/java/api-reference/localized-barcodes-unit.md
new file mode 100644
index 00000000..f80b0c58
--- /dev/null
+++ b/programming/java/api-reference/localized-barcodes-unit.md
@@ -0,0 +1,160 @@
+---
+layout: default-layout
+title: LocalizedBarcodesUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows LocalizedBarcodesUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getCount, getLocalizedBarcode, addLocalizedBarcode, removeAllLocalizedBarcodes, removeLocalizedBarcode, setLocalizedBarcode, LocalizedBarcodesUnit, api reference
+---
+# LocalizedBarcodesUnit Class
+
+The `LocalizedBarcodesUnit` class represents a unit that contains localized barcodes unit. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> LocalizedBarcodesUnit
+
+```java
+public class LocalizedBarcodesUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`addLocalizedBarcode`](#addlocalizedbarcode) | Adds a localized barcode.|
+| [`getCount`](#getcount) | Gets the number of localized barcodes in the unit.|
+| [`getLocalizedBarcode`](#getlocalizedbarcode) | Gets the localized barcode at the specified index.|
+| [`getLocalizedBarcodes`](#getlocalizedbarcodes) | Gets all localized barcodes.|
+| [`removeAllLocalizedBarcodes`](#removealllocalizedbarcodes) | Removes all localized barcodes.|
+| [`removeLocalizedBarcode`](#removelocalizedbarcode) | Removes the localized barcode at the specified index.|
+| [`setLocalizedBarcode`](#setlocalizedbarcode) | Sets the localized barcode at the specified index.|
+
+### addLocalizedBarcode
+
+Adds a localized barcode to the unit.
+
+```java
+public void addLocalizedBarcode(LocalizedBarcodeElement localizedBarcode) throws BarcodeReaderException
+public void addLocalizedBarcode(LocalizedBarcodeElement localizedBarcode, double[] matrixToOriginalImage) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`localizedBarcode` The localized barcode element to add.
+
+`matrixToOriginalImage` The matrix to original image. The array length must be 9.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while adding the localized barcode.
+
+`IllegalArgumentException` If the `matrixToOriginalImage` array length is not 9.
+
+**See Also**
+
+[LocalizedBarcodeElement]({{ site.dbr_java_api }}localized-barcode-element.html)
+
+### getCount
+
+Gets the number of localized barcodes in the unit.
+
+```java
+public int getCount()
+```
+
+**Return value**
+
+Returns the number of localized barcodes in the unit.
+
+### getLocalizedBarcode
+
+Gets the localized barcode at the specified index.
+
+```java
+public LocalizedBarcodeElement getLocalizedBarcode(int index) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`index` The index of the localized barcode to retrieve.
+
+**Return value**
+
+Returns a `LocalizedBarcodeElement` object at the specified index.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while retrieving the localized barcode.
+
+**See Also**
+
+[LocalizedBarcodeElement]({{ site.dbr_java_api }}localized-barcode-element.html)
+
+### getLocalizedBarcodes
+
+Gets all localized barcodes.
+
+```java
+public LocalizedBarcodeElement[] getLocalizedBarcodes()
+```
+
+**Return value**
+
+Returns an array of all `LocalizedBarcodeElement` objects.
+
+**See Also**
+
+[LocalizedBarcodeElement]({{ site.dbr_java_api }}localized-barcode-element.html)
+
+### removeAllLocalizedBarcodes
+
+Removes all localized barcodes from the unit.
+
+```java
+public void removeAllLocalizedBarcodes()
+```
+
+### removeLocalizedBarcode
+
+Removes the localized barcode at the specified index.
+
+```java
+public void removeLocalizedBarcode(int index) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`index` The index of the localized barcode to remove.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while removing the localized barcode.
+
+### setLocalizedBarcode
+
+Sets the localized barcode at the specified index.
+
+```java
+public void setLocalizedBarcode(int index, LocalizedBarcodeElement localizedBarcode) throws BarcodeReaderException
+public void setLocalizedBarcode(int index, LocalizedBarcodeElement localizedBarcode, double[] matrixToOriginalImage) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`index` The index at which to set the localized barcode.
+
+`localizedBarcode` The localized barcode element to set.
+
+`matrixToOriginalImage` The matrix to original image. The array length must be 9.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the localized barcode.
+
+`IllegalArgumentException` If the `matrixToOriginalImage` array length is not 9.
+
+**See Also**
+
+[LocalizedBarcodeElement]({{ site.dbr_java_api }}localized-barcode-element.html)
+
diff --git a/programming/java/api-reference/oned-code-details.md b/programming/java/api-reference/oned-code-details.md
new file mode 100644
index 00000000..f59b50da
--- /dev/null
+++ b/programming/java/api-reference/oned-code-details.md
@@ -0,0 +1,114 @@
+---
+layout: default-layout
+title: OneDCodeDetails Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of OneDCodeDetails class in Dynamsoft Barcode Reader Java Edition.
+keywords: startCharsBytes, stopCharsBytes, OneDCodeDetails, api reference
+---
+# OneDCodeDetails
+
+The `OneDCodeDetails` class represents detailed information about a one-dimensional barcode. It inherits from the `BarcodeDetails` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html) -> OneDCodeDetails
+
+```java
+public class OneDCodeDetails extends BarcodeDetails
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+|---------- | ---- | ----------- |
+| [`startCharsBytes`](#startcharsbytes) | *byte[]* | The start chars of the one-dimensional barcode in a byte array. |
+| [`stopCharsBytes`](#stopcharsbytes) | *byte[]* | The stop chars of the one-dimensional barcode in a byte array. |
+| [`checkDigitBytes`](#checkdigitbytes) | *byte[]* | The check digit chars of the one-dimensional barcode in a byte array. |
+| [`startPatternRange`](#startpatternrange) | *float[]* | The position of the start pattern relative to the barcode location. |
+| [`middlePatternRange`](#middlepatternrange) | *float[]* | The position of the middle pattern relative to the barcode location. |
+| [`endPatternRange`](#endpatternrange) | *float[]* | The position of the end pattern relative to the barcode location. |
+
+## Constructors
+
+| Constructor | Description |
+|------------ | ----------- |
+| [`OneDCodeDetails()`](#onedcodedetails) | Default constructor. |
+
+## Attribute Details
+
+### startCharsBytes
+
+The start chars of the one-dimensional barcode in a byte array.
+
+```java
+public byte[] startCharsBytes
+```
+
+### stopCharsBytes
+
+The stop chars of the one-dimensional barcode in a byte array.
+
+```java
+public byte[] stopCharsBytes
+```
+
+### checkDigitBytes
+
+The check digit chars of the one-dimensional barcode in a byte array.
+
+```java
+public byte[] checkDigitBytes
+```
+
+### startPatternRange
+
+The position of the start pattern relative to the barcode location.
+
+```java
+public float[] startPatternRange
+```
+
+**Remarks**
+
+The array represents a float array of length 2:
+- Index 0: X coordinate of the start position in percentage value.
+- Index 1: X coordinate of the end position in percentage value.
+
+### middlePatternRange
+
+The position of the middle pattern relative to the barcode location.
+
+```java
+public float[] middlePatternRange
+```
+
+**Remarks**
+
+The array represents a float array of length 2:
+- Index 0: X coordinate of the start position in percentage value.
+- Index 1: X coordinate of the end position in percentage value.
+
+### endPatternRange
+
+The position of the end pattern relative to the barcode location.
+
+```java
+public float[] endPatternRange
+```
+
+**Remarks**
+
+The array represents a float array of length 2:
+- Index 0: X coordinate of the start position in percentage value.
+- Index 1: X coordinate of the end position in percentage value.
+
+## Constructor Details
+
+### OneDCodeDetails()
+
+Default constructor. Initializes a new instance of the OneDCodeDetails class.
+
+```java
+public OneDCodeDetails()
+```
diff --git a/programming/java/api-reference/pdf417-details.md b/programming/java/api-reference/pdf417-details.md
new file mode 100644
index 00000000..07073324
--- /dev/null
+++ b/programming/java/api-reference/pdf417-details.md
@@ -0,0 +1,130 @@
+---
+layout: default-layout
+title: PDF417Details Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of PDF417Details class in Dynamsoft Barcode Reader Java Edition.
+keywords: rows, columns, errorCorrectionLevel, PDF417Details, api reference
+---
+# PDF417Details
+
+The `PDF417Details` class represents a barcode in PDF417 format. It inherits from the `BarcodeDetails` class and contains information about the row count, column count, and error correction level of the barcode.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html) -> PDF417Details
+
+```java
+public class PDF417Details extends BarcodeDetails
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+|---------- | ---- | ----------- |
+| [`rows`](#rows) | *int* | The number of rows in the PDF417 barcode. |
+| [`columns`](#columns) | *int* | The number of columns in the PDF417 barcode. |
+| [`errorCorrectionLevel`](#errorcorrectionlevel) | *int* | The error correction level of PDF417 code. |
+| [`hasLeftRowIndicator`](#hasleftrowindicator) | *int* | Specifies whether the left row indicator of the PDF417 code exists. |
+| [`hasRightRowIndicator`](#hasrightrowindicator) | *int* | Specifies whether the right row indicator of the PDF417 code exists. |
+| [`codewords`](#codewords) | *int[]* | Specifies the codewords of the PDF417 barcode. |
+
+## Constructors
+
+| Constructor | Description |
+|------------ | ----------- |
+| [`PDF417Details()`](#pdf417details) | Default constructor. |
+| [`PDF417Details(int rows, int columns, int errorCorrectionLevel, int hasLeftRowIndicator, int hasRightRowIndicator)`](#pdf417detailsint-rows-int-columns-int-errorcorrectionlevel-int-hasleftrowindicator-int-hasrightrowindicator) | Constructor with parameters. |
+| [`PDF417Details(PDF417Details pdf417Details)`](#pdf417detailspdf417details-pdf417details) | Copy constructor. |
+
+## Attribute Details
+
+### rows
+
+The number of rows in the PDF417 barcode.
+
+```java
+public int rows
+```
+
+### columns
+
+The number of columns in the PDF417 barcode.
+
+```java
+public int columns
+```
+
+### errorCorrectionLevel
+
+The error correction level of PDF417 code.
+
+```java
+public int errorCorrectionLevel
+```
+
+### hasLeftRowIndicator
+
+Specifies whether the left row indicator of the PDF417 code exists.
+
+```java
+public int hasLeftRowIndicator
+```
+
+### hasRightRowIndicator
+
+Specifies whether the right row indicator of the PDF417 code exists.
+
+```java
+public int hasRightRowIndicator
+```
+
+### codewords
+
+Specifies the codewords of the PDF417 barcode.
+
+```java
+public int[] codewords
+```
+
+## Constructor Details
+
+### PDF417Details()
+
+Default constructor. Initializes a new instance of the PDF417Details class with default values (-1, -1, -1, -1, -1).
+
+```java
+public PDF417Details()
+```
+
+### PDF417Details(int rows, int columns, int errorCorrectionLevel, int hasLeftRowIndicator, int hasRightRowIndicator)
+
+Constructor with parameters. Initializes a new instance of the PDF417Details class with specified values.
+
+```java
+public PDF417Details(int rows, int columns, int errorCorrectionLevel, int hasLeftRowIndicator, int hasRightRowIndicator)
+```
+
+**Parameters**
+
+`rows`: The number of rows in the PDF417 barcode.
+
+`columns`: The number of columns in the PDF417 barcode.
+
+`errorCorrectionLevel`: The error correction level of PDF417 code.
+
+`hasLeftRowIndicator`: Specifies whether the left row indicator of the PDF417 code exists.
+
+`hasRightRowIndicator`: Specifies whether the right row indicator of the PDF417 code exists.
+
+### PDF417Details(PDF417Details pdf417Details)
+
+Copy constructor. Initializes a new instance of the PDF417Details class by copying another PDF417Details instance.
+
+```java
+public PDF417Details(PDF417Details pdf417Details)
+```
+
+**Parameters**
+
+`pdf417Details`: The PDF417Details instance to copy from.
diff --git a/programming/java/api-reference/qr-code-details.md b/programming/java/api-reference/qr-code-details.md
new file mode 100644
index 00000000..35ce0080
--- /dev/null
+++ b/programming/java/api-reference/qr-code-details.md
@@ -0,0 +1,176 @@
+---
+layout: default-layout
+title: QRCodeDetails Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of QRCodeDetails class in Dynamsoft Barcode Reader Java Edition.
+keywords: rows, columns, errorCorrectionLevel, version, model, mode, page, totalPage, parityData, QRCodeDetails, api reference
+---
+# QRCodeDetails
+
+The `QRCodeDetails` class represents the details of a QR Code. It is derived from the `BarcodeDetails` class and contains various attributes related to the QR Code.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+*Inheritance:* [BarcodeDetails]({{ site.dbr_java_api }}barcode-details.html) -> QRCodeDetails
+
+```java
+public class QRCodeDetails extends BarcodeDetails
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+|---------- | ---- | ----------- |
+| [`rows`](#rows) | *int* | The row count of the QR Code. |
+| [`columns`](#columns) | *int* | The column count of the QR Code. |
+| [`errorCorrectionLevel`](#errorcorrectionlevel) | *int* | The error correction level of the QR Code. |
+| [`version`](#version) | *int* | The version of the QR Code. |
+| [`model`](#model) | *int* | Number of models of the QR Code. |
+| [`mode`](#mode) | *int* | The first data encoding mode of the QR Code. |
+| [`page`](#page) | *int* | The position of the particular symbol in the Structured Append format of the QR Code. |
+| [`totalPage`](#totalpage) | *int* | The total number of symbols to be concatenated in the Structured Append format of the QR Code. |
+| [`parityData`](#paritydata) | *byte* | The Parity Data following the Symbol Sequence Indicator. |
+| [`dataMaskPattern`](#datamaskpattern) | *int* | The data mask pattern reference for QR Code symbols. |
+| [`codewords`](#codewords) | *byte[]* | The codewords of the QR Code. |
+
+## Constructors
+
+| Constructor | Description |
+|------------ | ----------- |
+| [`QRCodeDetails()`](#qrcodedetails) | Default constructor. |
+| [`QRCodeDetails(int rows, int columns, int errorCorrectionLevel, int version, int model, int mode, int page, int totalPage, int parityData)`](#qrcodedetailsint-rows-int-columns-int-errorcorrectionlevel-int-version-int-model-int-mode-int-page-int-totalpage-int-paritydata) | Constructor with parameters. |
+
+## Attribute Details
+
+### rows
+
+The row count of the QR Code.
+
+```java
+public int rows
+```
+
+### columns
+
+The column count of the QR Code.
+
+```java
+public int columns
+```
+
+### errorCorrectionLevel
+
+The error correction level of the QR Code.
+
+```java
+public @EnumQRCodeErrorCorrectionLevel int errorCorrectionLevel
+```
+
+It is a value of the `EnumQRCodeErrorCorrectionLevel` enumeration.
+
+**See Also**
+
+[EnumQRCodeErrorCorrectionLevel]({{ site.dbr_java_api }}enum-qr-code-error-correction-level.html)
+
+### version
+
+The version of the QR Code.
+
+```java
+public int version
+```
+
+### model
+
+Number of models of the QR Code.
+
+```java
+public int model
+```
+
+### mode
+
+The first data encoding mode of the QR Code.
+
+```java
+public int mode
+```
+
+### page
+
+The position of the particular symbol in the Structured Append format of the QR Code.
+
+```java
+public int page
+```
+
+### totalPage
+
+The total number of symbols to be concatenated in the Structured Append format of the QR Code.
+
+```java
+public int totalPage
+```
+
+### parityData
+
+The Parity Data shall be an 8 bit byte following the Symbol Sequence Indicator. The parity data is a value obtained by XORing byte by byte the ASCII/JIS values of all the original input data before division into symbol blocks.
+
+```java
+public byte parityData
+```
+
+### dataMaskPattern
+
+The data mask pattern reference for QR Code symbols.
+
+```java
+public int dataMaskPattern
+```
+
+### codewords
+
+The codewords of the QR Code.
+
+```java
+public byte[] codewords
+```
+
+## Constructor Details
+
+### QRCodeDetails()
+
+Default constructor. Initializes a new instance of the QRCodeDetails class with default values.
+
+```java
+public QRCodeDetails()
+```
+
+### QRCodeDetails(int rows, int columns, int errorCorrectionLevel, int version, int model, int mode, int page, int totalPage, int parityData)
+
+Constructor with parameters. Initializes a new instance of the QRCodeDetails class with specified values.
+
+```java
+public QRCodeDetails(int rows, int columns, int errorCorrectionLevel, int version, int model, int mode, int page, int totalPage, int parityData)
+```
+
+**Parameters**
+
+`rows`: The row count of the QR Code.
+
+`columns`: The column count of the QR Code.
+
+`errorCorrectionLevel`: The error correction level of the QR Code.
+
+`version`: The version of the QR Code.
+
+`model`: Number of models of the QR Code.
+
+`mode`: The first data encoding mode of the QR Code.
+
+`page`: The position of the particular symbol in the Structured Append format of the QR Code.
+
+`totalPage`: The total number of symbols to be concatenated in the Structured Append format of the QR Code.
+
+`parityData`: The Parity Data following the Symbol Sequence Indicator.
diff --git a/programming/java/api-reference/scaled-barcode-image-unit.md b/programming/java/api-reference/scaled-barcode-image-unit.md
new file mode 100644
index 00000000..e3e6efa8
--- /dev/null
+++ b/programming/java/api-reference/scaled-barcode-image-unit.md
@@ -0,0 +1,62 @@
+---
+layout: default-layout
+title: ScaledBarcodeImageUnit Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: This page shows ScaledBarcodeImageUnit class definition of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: getImageData, setImageData, ScaledBarcodeImageUnit, api reference
+---
+# ScaledBarcodeImageUnit Class
+
+The `ScaledBarcodeImageUnit` class represents a unit that contains scaled barcode image. It inherits from the `IntermediateResultUnit` class.
+
+## Definition
+
+*Package:* com.dynamsoft.dbr.intermediate_results
+
+*Inheritance:* [IntermediateResultUnit]({{ site.dcvb_java_api }}core/intermediate-results/intermediate-result-unit.html) -> ScaledBarcodeImageUnit
+
+```java
+public class ScaledBarcodeImageUnit extends IntermediateResultUnit
+```
+
+## Methods
+
+| Method | Description |
+|-----------------------------------|-------------|
+| [`getImageData`](#getimagedata) | Gets the scaled barcode image data.|
+| [`setImageData`](#setimagedata) | Sets the scaled image data.|
+
+### getImageData
+
+Gets the scaled barcode image data.
+
+```java
+public ImageData getImageData()
+```
+
+**Return value**
+
+Returns the scaled image of the barcode.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
+
+### setImageData
+
+Sets the scaled image data.
+
+```java
+public void setImageData(ImageData imgData) throws BarcodeReaderException
+```
+
+**Parameters**
+
+`imgData` The scaled image data.
+
+**Exceptions**
+
+`BarcodeReaderException` If an error occurs while setting the image data.
+
+**See Also**
+
+[ImageData]({{ site.dcvb_java_api }}core/basic-classes/image-data.html)
diff --git a/programming/java/api-reference/simplified-barcode-reader-settings.md b/programming/java/api-reference/simplified-barcode-reader-settings.md
new file mode 100644
index 00000000..732b153b
--- /dev/null
+++ b/programming/java/api-reference/simplified-barcode-reader-settings.md
@@ -0,0 +1,150 @@
+---
+layout: default-layout
+title: SimplifiedBarcodeReaderSettings Class - Dynamsoft Barcode Reader Java Edition API Reference
+description: Definition of the SimplifiedBarcodeReaderSettings class in Dynamsoft Barcode Reader Java Edition.
+keywords: class, java, SimplifiedBarcodeReaderSettings
+needAutoGenerateSidebar: true
+needGenerateH3Content: true
+---
+
+# SimplifiedBarcodeReaderSettings
+
+The `SimplifiedBarcodeReaderSettings` class contains settings for barcode decoding. It is a sub-parameter of [`SimplifiedCaptureVisionSettings`]({{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/simplified-capture-vision-settings.html).
+
+## Definition
+
+*Package:* com.dynamsoft.dbr
+
+```java
+public class SimplifiedBarcodeReaderSettings
+```
+
+## Attributes
+
+| Attribute | Type | Description |
+| --------- | ---- | ----------- |
+| [`barcodeFormatIds`](#barcodeformatids) | *long* | Specifies the targeting format(s) of the barcode(s) to be decoded. |
+| [`expectedBarcodesCount`](#expectedbarcodescount) | *int* | Specifies the expected barcode count. |
+| [`grayscaleTransformationModes`](#grayscaletransformationmodes) | *int[]* | Sets the grayscale transformation modes. |
+| [`grayscaleEnhancementModes`](#grayscaleenhancementmodes) | *int[]* | Sets the grayscale enhancement modes. |
+| [`localizationModes`](#localizationmodes) | *int[]* | Sets the localization modes. |
+| [`deblurModes`](#deblurmodes) | *int[]* | Sets the deblur modes. |
+| [`minResultConfidence`](#minresultconfidence) | *int* | Sets the minimum result confidence. |
+| [`minBarcodeTextLength`](#minbarcodetextlength) | *int* | Sets the minimum barcode text length. |
+| [`barcodeTextRegExPattern`](#barcodetextregexpattern) | *String* | Sets the regex pattern for barcode text. |
+| [`maxThreadsInOneTask`](#maxthreadsinonetask) | *int* | Sets the maximum threads in one task. |
+| [`scaleDownThreshold`](#scaledownthreshold) | *int* | Sets the scale down threshold. |
+
+## Attribute Details
+
+### barcodeFormatIds
+
+Specifies the targeting format(s) of the barcode(s) to be decoded.
+
+```java
+public long barcodeFormatIds
+```
+
+It is a bitwise OR combination of one or more values from the [`EnumBarcodeFormat`]({{ site.dbr_java_api }}enum-barcode-format.html) enumeration.
+
+### expectedBarcodesCount
+
+Specifies the expected barcode count. The default value is 0.
+
+```java
+public int expectedBarcodesCount
+```
+
+**Remarks**
+
+* Set `expectedBarcodesCount` to 0 if the barcode count is unknown. The library will try to find at least 1 barcode.
+* Set `expected_barcodes_count` to 1 to reach the highest speed for processing single barcode.
+* Set `expected_barcodes_count` to "n" if there will be "n" barcodes to process from an image.
+* Set `expected_barcodes_count` to the highest expected value if there exists multiple barcode but the exact count is not confirmed.
+
+### grayscale_transformation_modes
+
+Specifies how grayscale transformations should be applied, including whether to process inverted grayscale images and the specific transformation mode to use.
+
+It is a list of 8 integers, where each integer represents a mode specified by the [`EnumGrayscaleTransformationMode`]({{ site.dcvb_python_api }}core/enum-grayscale-transformation-mode.html) enumeration.
+
+View the parameter reference page of `GrayscaleTransformationModes` for more detail about grayscale transformation modes.
+
+### grayscale_enhancement_modes
+
+Specifies how to enhance the quality of the grayscale image.
+
+It is a list of 8 integers, where each integer represents a mode specified by the [`EnumGrayscaleEnhancementMode`]({{ site.dcvb_python_api }}core/enum-grayscale-enhancement-mode.html) enumeration.
+
+View the parameter reference page of `GrayscaleEnhancementModes` for more detail about grayscale enhancement modes.
+
+### localization_modes
+
+Specifies how to localize barcodes.
+
+It is a list of 8 integers, where each integer represents a mode specified by the [`EnumLocalizationMode`]({{ site.dbr_python_api }}enum-localization-mode.html) enumeration.
+
+View the parameter reference page of `LocalizationModes` for more detail about location modes.
+
+### deblur_modes
+
+Specifies the mode and priority for deblurring.
+
+It is a list of 10 integers, where each integer represents a mode specified by the [`EnumDeblurMode`]({{ site.dbr_python_api }}enum-deblur-mode.html) enumeration.
+
+View the parameter reference page of `DeblurModes` for more detail about deblur modes.
+
+### min_result_confidence
+
+Specifies the minimum result confidence to filter out the low confidence results. The default value is 30.
+
+### min_barcode_text_length
+
+Specifies the minimum barcode text length to filter out the unqualified results.
+
+### barcode_text_regex_pattern
+
+Specifies the RegEx pattern of the barcode text to filter out the unqualified results.
+
+### max_threads_in_one_task
+
+Specifies the maximum available threads count in one barcode decoding task.
+
+**Value Range**
+
+[1, 256]
+
+**Default value**
+
+4
+
+### scale_down_threshold
+
+Specifies the threshold for image shrinking.
+
+**Value Range**
+
+[512, 0x7fffffff]
+
+**Default Value**
+
+2300
+
+**Remarks**
+
+If the shorter edge size is larger than the given threshold value, the library will calculate the required height and width of the target image and shrink the image to that size before further operation. Otherwise, the library will perform operation on the original image.
+
+## Methods
+
+| Method | Description |
+|------- | ---- |
+| [`__init__`](#__init__) | Initializes a new instance of the `SimplifiedBarcodeReaderSettings` class. |
+
+### \_\_init\_\_
+
+Initializes a new instance of the `SimplifiedBarcodeReaderSettings` class.
+
+```python
+def __init__(self):
+```
+
diff --git a/programming/java/index.md b/programming/java/index.md
new file mode 100644
index 00000000..3ebb047e
--- /dev/null
+++ b/programming/java/index.md
@@ -0,0 +1,52 @@
+---
+title: Introduction - Dynamsoft Barcode Reader Java Edition
+keywords: java, documentation
+description: This page introduces the Java Edition of Dynamsoft Barcode Reader
+needAutoGenerateSidebar: false
+---
+
+# Introduction to Dynamsoft Barcode Reader Java Edition
+
+Dynamsoft Barcode Reader (DBR) SDK Java Edition is a barcode reading tool designed specifically for java developers.
+
+Leveraging the efficiency and flexibility of the java language, DBR Java Edition provides rich APIs for developers to easily integrate barcode reading functionality into your java applications. Please take a look at [API Reference]({{ site.dbr_java_api }}) to see details.
+
+As one of the functional products of the Dynamsoft Capture Vision (DCV) framework, DBR is also designed to seamlessly integrate with other DCV components and provide developers with a comprehensive set of image processing tools, which cover image capturing, content understanding, result parsing, and interactive workflow. If you are building such a capturing and processing solution, take a look at [Introduction to Dynamsoft Capture Vision]({{ site.dcvb_architecture }}).
+
+Furthermore, DBR provides a powerful parameter system in order to cope with various scenarios. Read [Parameters]({{ site.dbr_parameters }}structure-and-interfaces-of-parameters.html) for details.
+
+## Getting Started with DBR Java Edition
+
+The best way to start with the Dynamsoft Barcode Reader Java Edition, is following the [`User Guide`]({{ site.dbr_java }}user-guide.html) to build your first barcode reading application. Please note that the system requirements is as below:
+
+### System Requirements
+
+- Operating systems:
+ - Windows Windows: Windows 8 and higher, or Windows Server 2012 and higher
+ - Linux x64 (Ubuntu 14.04.4+ LTS, Debian 8+, CentOS 7+, etc.)
+ - Linux arm 64bit
+ - macOS universal 10.15+
+- JDK 1.8 and above
+
+- For Embedded Devices:
+For embedded or ARM-based platforms, we recommend using a device with performance equivalent to or better than a Raspberry Pi 4 Model B (4GB RAM). Minimum recommended specs:
+ - Quad-core ARM Cortex-A72 processor (or equivalent)
+ - 4 GB RAM
+ - Linux-based OS (e.g., Raspberry Pi OS, Ubuntu Server)
+
+## API Reference
+
+For an overview of the APIs, see the [API Reference]({{ site.dbr_java_api }}).
+
+## Release Notes
+
+For a peek of DBR Java Edition history, check the [Release Notes]({{ site.dbr_java_release_notes }}).
+
+## License Subscription
+
+To develop and run your application with Dynamsoft Barcode Reader SDK, you need an active license key:
+* Request a 30-day free trial license
+
+## Contact Us
+
+Feel free to contact us if you have any questions.
\ No newline at end of file
diff --git a/programming/java/release-notes/index.md b/programming/java/release-notes/index.md
new file mode 100644
index 00000000..62acffbe
--- /dev/null
+++ b/programming/java/release-notes/index.md
@@ -0,0 +1,56 @@
+---
+layout: default-layout
+title: Release Notes - Dynamsoft Barcode Reader SDK Java Edition
+description: This is the release notes page of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: release notes, java
+needAutoGenerateSidebar: false
+---
+
+# Release Notes for Java Edition
+
+- [11.0.6000 (08/06/2025)]({{ site.dbr_java_release_notes }}java-11.html#1106000-08062025)
+- [9.6.40 (03/14/2024)]({{ site.dbr_java_release_notes }}java-9.md#9640-03142024)
+- [9.6.30 (08/29/2023)]({{ site.dbr_java_release_notes }}java-9.md#9630-08292023)
+- [9.6.20 (03/16/2023)]({{ site.dbr_java_release_notes }}java-9.md#9620-03162023)
+- [9.6.10 (01/10/2023)]({{ site.dbr_java_release_notes }}java-9.md#9610-01102023)
+- [9.6.0 (11/29/2022)]({{ site.dbr_java_release_notes }}java-9.md#960-11292022)
+- [9.4.0 (08/30/2022)]({{ site.dbr_java_release_notes }}java-9.md#940-08302022)
+- [9.2.0 (06/07/2022)]({{ site.dbr_java_release_notes }}java-9.md#920-06072022)
+- [9.0.0 (03/15/2022)]({{ site.dbr_java_release_notes }}java-9.md#900-03152022)
+- [8.8.0 (10/12/2021)]({{ site.dbr_java_release_notes }}java-8.md#880-10122021)
+- [8.6.0 (07/15/2021)]({{ site.dbr_java_release_notes }}java-8.md#860-07152021)
+- [8.4.0 (06/08/2021)]({{ site.dbr_java_release_notes }}java-8.md#840-06082021)
+- [8.2.0 (03/17/2021)]({{ site.dbr_java_release_notes }}java-8.md#820-03172021)
+- [8.1.2 (01/22/2021)]({{ site.dbr_java_release_notes }}java-8.md#812-01222021)
+- [8.1.0 (01/12/2021)]({{ site.dbr_java_release_notes }}java-8.md#810-01122021)
+- [8.0.0 (11/17/2020)]({{ site.dbr_java_release_notes }}java-8.md#800-11172020)
+- [7.6.0 (09/01/2020)]({{ site.dbr_java_release_notes }}java-7.md#760-09012020)
+- [7.5.0 (07/22/2020)]({{ site.dbr_java_release_notes }}java-7.md#750-07222020)
+- [7.4.0 (04/16/2020)]({{ site.dbr_java_release_notes }}java-7.md#740-04162020)
+- [7.3.0 (01/02/2020)]({{ site.dbr_java_release_notes }}java-7.md#730-01022020)
+- [7.2.2 (11/13/2019)]({{ site.dbr_java_release_notes }}java-7.md#722-11132019)
+- [7.2.1 (11/12/2019)]({{ site.dbr_java_release_notes }}java-7.md#721-11122019)
+- [7.2.0 (09/24/2019)]({{ site.dbr_java_release_notes }}java-7.md#720-09242019)
+- [7.1.0 (08/15/2019)]({{ site.dbr_java_release_notes }}java-7.md#710-08152019)
+- [7.0.0 (07/11/2019)]({{ site.dbr_java_release_notes }}java-7.md#700-07112019)
+- [6.5.3 (07/03/2019)]({{ site.dbr_java_release_notes }}java-7.md#653-07032019)
+- [6.5.2 (05/28/2019)]({{ site.dbr_java_release_notes }}java-7.md#652-05282019)
+- [6.5.1 (04/16/2019)]({{ site.dbr_java_release_notes }}java-7.md#651-04162019)
+- [6.5.0 (02/26/2019)]({{ site.dbr_java_release_notes }}java-7.md#650-02262019)
+- [6.4.1 (11/22/2018)]({{ site.dbr_java_release_notes }}java-7.md#641-11222018)
+- [6.4.0 (10/15/2018)]({{ site.dbr_java_release_notes }}java-7.md#640-10152018)
+- [6.3.0 (08/16/2018)]({{ site.dbr_java_release_notes }}java-7.md#630-08162018)
+- [6.2.0 (06/28/2018)]({{ site.dbr_java_release_notes }}java-7.md#620-06282018)
+- [6.1.0 (05/14/2018)]({{ site.dbr_java_release_notes }}java-7.md#610-05142018)
+- [6.0.0 (03/30/2018)]({{ site.dbr_java_release_notes }}java-7.md#600-03302018)
+- [5.2.0 (09/08/2017)]({{ site.dbr_java_release_notes }}java-7.md#520-09082017)
+- [5.1.0 (05/25/2017)]({{ site.dbr_java_release_notes }}java-7.md#510-05252017)
+- [5.0.0 (03/07/2017)]({{ site.dbr_java_release_notes }}java-7.md#500-03072017)
+- [4.3.0 (10/13/2016)]({{ site.dbr_java_release_notes }}java-7.md#430-10132016)
+- [4.2.0 (04/08/2016)]({{ site.dbr_java_release_notes }}java-7.md#420-04082016)
+- [4.1.0 (01/21/2016)]({{ site.dbr_java_release_notes }}java-7.md#410-01212016)
+- [4.0.0 (11/03/2015)]({{ site.dbr_java_release_notes }}java-7.md#400-11032015)
+- [3.0.0 (08/13/2015)]({{ site.dbr_java_release_notes }}java-7.md#300-08132015)
+- [2.1.0 (06/23/2015)]({{ site.dbr_java_release_notes }}java-7.md#210-06232015)
+- [2.0.0 (05/12/2015)]({{ site.dbr_java_release_notes }}java-7.md#200-05122015)
+- [1.0.0 (01/20/2015)]({{ site.dbr_java_release_notes }}java-7.md#100-01202015)
\ No newline at end of file
diff --git a/programming/java/release-notes/java-11.md b/programming/java/release-notes/java-11.md
new file mode 100644
index 00000000..ff475d47
--- /dev/null
+++ b/programming/java/release-notes/java-11.md
@@ -0,0 +1,30 @@
+---
+layout: default-layout
+title: Release Notes v11.x - Dynamsoft Barcode Reader SDK Java Edition
+description: This is the release notes page of Dynamsoft Barcode Reader SDK Java Edition v11.x.
+keywords: release notes, java
+needGenerateH3Content: false
+---
+
+# Release Notes for Java Edition - 11.x
+
+## 11.0.6000 (08/06/2025)
+
+### [Highlights](https://www.dynamsoft.com/release-highlights/?product=dbr11.0)
+
+- Workflow Improvements
+ - Restructured the parameter control hierarchy at all levels for finer scope definition and more granular process management, with the stage level newly added.
+ - Enabled custom combinations and sequences of sections, increasing flexibility and operational customization under specific conditions.
+
+- Deep Learning Integration
+ - Improved the reading rate of 1D barcode by introducing a new deblurring deep-learning model.
+
+- Algorithm Enhancements
+ - Enabled deduplication at the Region of Interest (ROI) level to consolidate results from multiple tasks.
+ - Improved the **CODE_128** and **DataMatrix** DeepAnalysis algorithms for better decoding accuracy and performance.
+ - Added support for new barcode types: **CODE_32**, **MATRIX_25**, **KIX**, and **TELEPEN**.
+
+- Engineering Optimizations
+ - Unified template-loading logic to reduce I/O overhead.
+ - Added support for capturing data from multi-page files, including **PDF** and **TIFF** formats.
+ - Implemented conversion functionality between `ImageData` and image files, including both on-disk and in-memory files.
diff --git a/programming/java/samples/index.md b/programming/java/samples/index.md
new file mode 100644
index 00000000..c30220f2
--- /dev/null
+++ b/programming/java/samples/index.md
@@ -0,0 +1,39 @@
+---
+layout: default-layout
+title: Samples - Dynamsoft Barcode Reader SDK Python Edition
+description: Sample list page of Dynamsoft Barcode Reader Python Edition.
+keywords: python
+needAutoGenerateSidebar: false
+---
+
+# Samples and Demos - Python Edition
+
+
+## Samples
+
+### Basic Barcode Reader Samples
+
+| Sample Name | Description |
+| --- | --- |
+| HelloWorld | This is a Java sample that illustrates the simplest way to recognize barcodes from images with Dynamsoft Barcode Reader SDK. |
+| GeneralSettings | This sample demonstrates how to configure general used settings and read barcodes from an image file. |
+| VideoDecoding | This sample demonstrates how to read barcodes from video frames. |
+| ReadDPMBarcode | This sample demonstrates how to read DPM (Direct Part Marking) barcodes and get barcode results. |
+| ParameterTuner | This sample demonstrates how to adjust and test different parameter settings to optimize barcode recognition performance. |
+| ShowLocalizedVSDecodedBarcodes | This sample demonstrates how to highlight successfully decoded and only-localized barcodes with different styles of rectangles. |
+
+### Additional Samples using Capture Vision SDK
+
+In addition to the classic barcode decoding samples listed above, the following samples go a step further by parsing the decoded results and showcasing more structured workflows.
+
+> [!IMPORTANT]
+> These samples use the `Dynamsoft Capture Vision` package instead of `Dynamsoft Barcode Reader`. If you're switching to these samples, make sure to [download](https://www.dynamsoft.com/capture-vision/confirmation/#desktop) and use the correct package.
+
+| Sample Name | Description |
+| --- | --- |
+| DriverLicenseScanner | Shows how to capture and extract user's information from driver license/ID. |
+| VINScanner | Shows how to capture and extract vehicle's information from Vehicle Identification Number (VIN). |
+| GS1AIScanner | Shows how to extract and interpret GS1 Application Identifiers (AIs) from GS1 barcodes. |
+
+## Official Online Demo
+This Online Demo is an online barcode scanner for all barcode types. All supported parameters are opened for customization to see how Dynamsoft Barcode Reader works in different usage scenarios.
diff --git a/programming/java/upgrade-instruction.md b/programming/java/upgrade-instruction.md
new file mode 100644
index 00000000..2c409d0f
--- /dev/null
+++ b/programming/java/upgrade-instruction.md
@@ -0,0 +1,203 @@
+---
+title: Upgrade Instructions - Dynamsoft Barcode Reader SDK Python Edition
+keywords: python, upgrade
+description: This page introduces how to upgrade Dynamsoft Barcode Reader SDK Python Edition
+needAutoGenerateSidebar: true
+needGenerateH3Content: true
+---
+
+# How to Upgrade to Version 11.x
+
+## From version 10.x
+
+To upgrade from version 10.x to 11.x, we recommend you to take the following steps.
+
+### 1. Update the License Key
+
+#### Request a 30-Day Free Trial License
+
+Visit the [Request a Trial License](https://www.dynamsoft.com/customer/license/trialLicense?product=dbr&utm_source=docs){:target="_blank"} page to obtain a 30-day free license. This option is ideal for initial evaluation or testing of new SDK features.
+
+#### Annual Online Full License
+
+If you are using an Annual Online Full License, your license will continue to work with the current SDK version without the need for updates. Go to Customer Portal to get your license key.
+
+#### Perpetual License
+
+For users with a Perpetual License, please contact our sales team to update your license. You can reach out through our [Contacting Us](https://www.dynamsoft.com/contact/){:target="_blank"} page for assistance.
+
+### 2. Upgrade the Assembly Files
+
+Run the following command to upgrade the assembly files.
+
+```bash
+pip install dynamsoft-barcode-reader-bundle --upgrade
+```
+
+### 3. Migrate Your Templates
+
+The template system is upgraded. The template you used for the previous version can't be directly recognized by the new version. Please use the template upgrade tool to upgrade your template.
+
+
+## From version 9.x or earlier
+
+Dynamsoft Barcode Reader SDK has been refactored to integrate with [`DynamsoftCaptureVision (DCV)`]({{ site.dcvb_architecture }}) architecture. To upgrade from version 9.x or earlier to 11.x, we recommend you to follow the [User Guide]({{ site.dbr_python }}user-guide.html) and re-write your codes. This section highlights only the key changes and necessary actions for upgrading the SDK.
+
+### Update the License Key
+
+#### Request a 30-Day Free Trial License
+
+Visit the [Request a Trial License](https://www.dynamsoft.com/customer/license/trialLicense?product=dbr&utm_source=docs){:target="_blank"} page to obtain a 30-day free license. This option is ideal for initial evaluation or testing of new SDK features.
+
+#### Annual Online Full License
+
+If you are using an Annual Online Full License, your license will continue to work with the current SDK version without the need for updates. Go to Customer Portal to get your license key.
+
+#### Perpetual License
+
+For users with a Perpetual License, please contact our sales team to update your license. You can reach out through our [Contacting Us](https://www.dynamsoft.com/contact/){:target="_blank"} page for assistance.
+
+### Migrate to New Package
+
+As of version 10.0, the `dbr` package has been renamed to `dynamsoft-barcode-reader-bundle` to reflect changes in both architecture and API design. Start terminal or command prompt and run the following command to install the new package.
+
+```bash
+pip install dynamsoft-barcode-reader-bundle
+```
+
+### Update the License Activation Code
+
+Starting from 10.0, we have unified the API for setting licenses across different Dynamsoft products.
+
+| Old APIs | New APIs |
+| :----------- | :------- |
+| `BarcodeReader.init_license` | [`LicenseManager.init_license`]({{ site.dcvb_python_api }}license/license-manager.html#init_license) |
+
+### Update Single Image Decoding APIs
+
+The APIs for decoding single image have been adjusted as follows:
+
+| Old APIs | New APIs |
+| :----------- | :------- |
+| `BarcodeReader.decode_file` | [`CaptureVisionRouter.capture`]({{ site.dcvb_python_api }}capture-vision-router/single-file-processing.html#capture) |
+| `BarcodeReader.decode_file_stream` | [`CaptureVisionRouter.capture`]({{ site.dcvb_python_api }}capture-vision-router/single-file-processing.html#capture) |
+| `BarcodeReader.decode_buffer_manually` | [`CaptureVisionRouter.capture`]({{ site.dcvb_python_api }}capture-vision-router/single-file-processing.html#capture) |
+| `class TextResult` | [`class BarcodeResultItem`]({{ site.dbr_python_api }}barcode-result-item.html) |
+| `BarcodeReader.decode_base64_string` | **Currently not available**. |
+| `BarcodeReader.decode_buffer` | [`CaptureVisionRouter.capture`]({{ site.dcvb_python_api }}capture-vision-router/single-file-processing.html#capture)(Available since v10.4.2100) |
+
+### Update Video Streaming Decoding Code
+
+`ImageSourceAdapter` is added to replace the `FrameDecodeingParameters` and the previous video methods. You should implement `ImageSourceAdapter` to transfer image data from camera or video file to buffer.
+
+
+### Migrate Your Templates
+
+The template system is upgraded. The template you used for the previous version can't be directly recognized by the new version. Please use the template upgrade tool to upgrade your template.
+
+The template-based APIs have been updated as follows:
+
+| Old APIs | New APIs |
+| :----------- | :------- |
+| `BarcodeReader.init_runtime_settings_with_file` | [`CaptureVisionRouter.init_settings_from_file`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#init_settings_from_file) |
+| `BarcodeReader.init_runtime_settings_with_string` | [`CaptureVisionRouter.init_settings`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#init_settings) |
+| `BarcodeReader.output_settings_to_json_file` | [`CaptureVisionRouter.output_settings_to_file`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#output_settings_to_file) |
+| `BarcodeReader.output_settings_to_json_string` | [`CaptureVisionRouter.output_settings`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#output_settings) |
+| `BarcodeReader.reset_runtime_settings` | [`CaptureVisionRouter.reset_settings`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#reset_settings) |
+| `BarcodeReader.append_template_file_to_runtime_settings` | **Not available**. |
+| `BarcodeReader.append_template_string_to_runtime_settings` | **Not available**. |
+| `BarcodeReader.get_all_template_names` | **Not available**. |
+
+### Migrate Your PublicRuntimeSetting
+
+The class `PublicRuntimeSetting` has been refactored. It retains commonly used properties via `SimplifiedCaptureVisionSettings` while removing the previously complex property settings, which are now exclusively supported through templates.
+
+The APIs for accessing and updating runtime settings have been adjusted as follows:
+
+| Old APIs | New APIs |
+| :----------- | :------- |
+| `BarcodeReader.get_runtime_settings` | [`CaptureVisionRouter.get_simplified_settings`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#get_simplified_settings) |
+| `BarcodeReader.update_runtime_settings` | [`CaptureVisionRouter.update_settings`]({{ site.dcvb_python_api }}capture-vision-router/settings.html#update_settings) |
+
+#### Migrate to SimplifiedCaptureVisionSettings
+
+The following properties are replaced by similar properties under `SimplifiedCaptureVisionSettings`. They can also be set via a template file(String).
+
+| PublicRuntimeSetting Property | SimplifiedCaptureVisionSettings Parameter | Template File Parameter |
+| ------------------------------- | ----------------------------------------- | ----------------------- |
+| `region` | [`roi`]({{ site.dcvb_python_api }}capture-vision-router/auxiliary-classes/simplified-capture-vision-settings.html#roi) & [`roi_measured_in_percentage`]({{ site.dcvb_python_api }}capture-vision-router/auxiliary-classes/simplified-capture-vision-settings.html#roi_measured_in_percentage) | [`TargetROIDef.Location.Offset`]({{ site.dcvb_parameters_reference }}target-roi-def/location.html) |
+| `timeout` | [`timeout`]({{ site.dcvb_python_api }}capture-vision-router/auxiliary-classes/simplified-capture-vision-settings.html#timeout) | [`CaptureVisionTemplates.Timeout`]({{ site.dcvb_parameters_reference }}capture-vision-template/timeout.html) |
+
+#### Migrate to SimplifiedBarcodeReaderSettings
+
+The following properties are replaced by similar properties under `SimplifiedBarcodeReaderSettings`. The majority of them can also be set via a template file(String).
+
+| PublicRuntimeSetting Property | SimplifiedBarcodeReaderSettings Property | Template File Parameter |
+| ------------------------------- | ----------------------------------------- | ----------------------- |
+| `min_barcode_text_length` | [`min_barcode_text_length`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#min_barcode_text_length) | [`BarcodeFormatSpecification.BarcodeTextLengthRangeArray`]({{ site.dcvb_parameters_reference }}barcode-format-specification/barcode-text-length-range-array.html) |
+| `min_result_confidence` | [`min_result_confidence`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#min_result_confidence) | [`BarcodeFormatSpecification.MinResultConfidence`]({{ site.dcvb_parameters_reference }}barcode-format-specification/min-result-confidence.html) |
+| `localization_modes` | [`localization_modes`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#localization_modes) | [`BarcodeReaderTaskSetting.LocationModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/localization-modes.html) |
+| `expected_barcodes_count` | [`expected_barcodes_count`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#expected_barcodes_count) | [`BarcodeReaderTaskSetting.ExpectedBarcodesCount`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/expected-barcodes-count.html) |
+| `barcode_format_ids` | [`barcode_format_ids`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#barcode_format_ids) | [`BarcodeReaderTaskSetting.BarcodeFormatIds`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-format-ids.html) |
+| `barcode_format_ids_2` | [`barcode_format_ids`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#barcode_format_ids) | [`BarcodeReaderTaskSetting.BarcodeFormatIds`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-format-ids.html) |
+| `deblur_modes` | [`deblur_modes`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#deblur_modes) | [`BarcodeReaderTaskSetting.DeblurModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html) |
+| `deblur_level` | [`deblur_modes`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#deblur_modes) | [`BarcodeReaderTaskSetting.DeblurModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html) |
+| `max_algorithm_thread_count` | [`max_threads_in_one_task`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#max_threads_in_one_task) | [`BarcodeReaderTaskSetting.MaxThreadsInOneTask`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/max-threads-in-one-task.html) |
+| `grayscale_transformation_modes` | [`grayscale_transformation_modes`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#grayscale_transformation_modes) | [`ImageParameter.GrayscaleTransformationModes`]({{ site.dcvb_parameters_reference }}image-parameter/grayscale-enhancement-modes.html) |
+| `image_preprocessing_modes` | [`grayscale_enhancement_modes`]({{ site.dbr_python_api }}simplified-barcode-reader-settings.html#grayscale_enhancement_modes) | [`ImageParameter.GrayscaleEnhancementModes`]({{ site.dcvb_parameters_reference }}image-parameter/grayscale-transformation-modes.html) |
+
+> Remarks:
+>
+> * The 2 groups of barcode formats are merged.
+> * `deblur_level` is deprecated. You can use `deblur_modes` instead.
+> * The mode `IPM_MORPHOLOGY` of `imagePreprocessingModes` is migrated to `BinarizationModes`. The mode arguments `MorphOperation`, `MorphOperationKernelSizeX`, `MorphOperationKernelSizeY`, `MorphShape` are now available for all modes of `BinarizationModes`.
+
+#### Migrate to Template File
+
+The following properties can only be set via a template file. Please call `BarcodeReader.output_settings_to_json_file` first with the old version to export the settings and then use the template upgrade tool to upgrade your template.
+
+| PublicRuntimeSetting Property | Template File Parameter |
+| ------------------------------- | ----------------------- |
+| `scale_down_threshold` | [`ImageParameter.ImageScaleSettings`]({{ site.dcvb_parameters_reference }}image-parameter/image-scale-settings.html) |
+| `binarization_modes` | [`ImageParameter.BinarizationModes`]({{ site.dcvb_parameters_reference }}image-parameter/binarization-modes.html) |
+| `text_result_order_modes` | [`BarcodeReaderTaskSetting.TextResultOrderModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/text-result-order-modes.html) |
+| `return_barcode_zone_clarity` | [`BarcodeReaderTaskSetting.ReturnBarcodeZoneClarity`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/return-barcode-zone-clarity.html) |
+| `scale_up_modes` | [`BarcodeReaderTaskSetting.BarcodeScaleModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-scale-modes.html) |
+| `barcode_zone_min_distance_to_image_borders` | [`BarcodeFormatSpecification.BarcodeZoneMinDistanceToImageBorders`]({{ site.dcvb_parameters_reference }}barcode-format-specification/barcode-zone-min-distance-to-image-borders.html) |
+| `colour_conversion_modes` | [`ImageParameter.ColourConversionModes`]({{ site.dcvb_parameters_reference }}image-parameter/colour-conversion-modes.html) |
+| `region_predetection_modes` | [`BarcodeReaderTaskSetting.RegionPredetectionModes`]({{ site.dcvb_parameters_reference }}image-parameter/region-predetection-modes.html) |
+| `texture_detection_modes` | [`ImageParameter.TextureDetectionModes`]({{ site.dcvb_parameters_reference }}image-parameter/texture-detection-modes.html) |
+| `text_filter_modes` | [`ImageParameter.TextDetectionMode`]({{ site.dcvb_parameters_reference }}image-parameter/text-detection-mode.html) & [`ImageParameter.IfEraseTextZone`]({{ site.dcvb_parameters_reference }}image-parameter/if-erase-text-zone.html) |
+| `dpm_code_reading_modes` | [`BarcodeReaderTaskSetting.DPMCodeReadingModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/dpm-code-reading-modes.html) |
+| `deformation_resisting_modes` | [`BarcodeReaderTaskSetting.DeformationResistingModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deformation-resisting-modes.html) |
+| `barcode_complement_modes` | [`BarcodeReaderTaskSetting.BarcodeComplementModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-complement-modes.html) |
+
+#### Migrate to Other APIs
+
+The PDF properties of `PublicRuntimeSetting` are moved to set via the `set_pdf_reading_parameter` method of [`DirectoryFetcher`]({{ site.dcvb_python_api }}utility/directory-fetcher.html) and [`FileFetcher`]({{ site.dcvb_python_api }}utility/file-fetcher.html) with a [`PDFReadingParameter`]({{ site.dcvb_python_api }}core/basic-classes/pdf-reading-parameter.html) parameter.
+
+| PublicRuntimeSetting Property |
+| ----------------------------- |
+| `pdf_reading_mode` |
+| `pdf_raster_dpi` |
+
+The `Intermediate Result` system is redesigned and the following properties are deprecated.
+
+| PublicRuntimeSetting Property |
+| --------------------- |
+| `intermediate_result_types` |
+| `intermediate_result_saving_mode` |
+
+#### Removed
+
+The following properties are removed.
+
+| PublicRuntimeSetting Property|
+| --------------------- |
+| `barcode_colour_modes` |
+| `result_coordinate_type` |
+| `terminate_phase` |
+
+| FurtherModes Property|
+| --------------------- |
+| `colour_clustering_modes` |
diff --git a/programming/java/user-guide.md b/programming/java/user-guide.md
new file mode 100644
index 00000000..8bbb084e
--- /dev/null
+++ b/programming/java/user-guide.md
@@ -0,0 +1,298 @@
+---
+layout: default-layout
+title: User Guide - Dynamsoft Barcode Reader SDK Java Edition
+description: This is the user guide of Dynamsoft Barcode Reader SDK Java Edition.
+keywords: user guide, java
+needAutoGenerateSidebar: true
+needGenerateH3Content: true
+noTitleIndex: true
+---
+
+# Getting Started with Dynamsoft Barcode Reader SDK Java Edition
+
+In this guide, you will learn step by step on how to build a barcode reading application with Dynamsoft Barcode Reader SDK using Java.
+
+> Read more on [Dynamsoft Barcode Reader Features](https://www.dynamsoft.com/barcode-reader/features/)
+
+- [Getting Started with Dynamsoft Barcode Reader SDK Java Edition](#getting-started-with-dynamsoft-barcode-reader-sdk-java-edition)
+ - [System Requirements](#system-requirements)
+ - [Installation](#installation)
+ - [Build Your First Application](#build-your-first-application)
+ - [Create a New Project](#create-a-new-project)
+ - [Include the Library](#include-the-library)
+ - [Initialize the License Key](#initialize-the-license-key)
+ - [Create a CaptureVisionRouter Instance](#create-a-capturevisionrouter-instance)
+ - [Invoke the Barcode Capturing](#invoke-the-barcode-capturing)
+ - [Filter and Get Barcode Details](#filter-and-get-barcode-details)
+ - [Build and Run the Project](#build-and-run-the-project)
+ - [Process Multiple Images](#process-multiple-images)
+ - [Create an ImageSource as the Input](#create-an-imagesource-as-the-input)
+ - [Implement a CapturedResultReceiver as the Output Listener](#implement-a-capturedresultreceiver-as-the-output-listener)
+ - [Handle Capture Stoppage by Implementing an ImageSource State Listener](#handle-capture-stoppage-by-implementing-an-imagesource-state-listener)
+ - [Register the Input, Output Listener and ImageSource State Listener to the CaptureVisionRouter Instance](#register-the-input-output-listener-and-imagesource-state-listener-to-the-capturevisionrouter-instance)
+ - [Start the Capturing Process](#start-the-capturing-process)
+ - [Build and Run the Project Again](#build-and-run-the-project-again)
+
+## System Requirements
+
+To find out whether your environment is supported, please read the [System Requirements]({{ site.dbr_java }}index.html#system-requirements).
+
+## Installation
+
+If you don't have a Maven project, you can create one with the following steps:
+
+1. Create a new directory for your project
+2. Navigate to the directory and run the following command to create a Maven project:
+
+```
+mvn archetype:generate -DgroupId=com.dynamsoft -DartifactId=dbr-hello-world -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
+```
+
+3. Add the Dynamsoft Barcode Reader dependency to your `pom.xml` file:
+
+```xml
+
+
+ dbr
+ https://download2.dynamsoft.com/maven/dbr/jar
+
+
+
+
+
+ com.dynamsoft
+ dbr
+ 11.0.6000
+
+
+```
+
+## Build Your First Application
+
+Let's start by creating a console application which demonstrates how to use the minimum code to read barcodes from an image file.
+
+> You can download the entire source code from here.
+
+### Create a New Project
+
+Create a new Java source file named `ReadAnImage.java` in your project's `src/main/java` directory.
+
+### Include the Library
+
+Import the necessary packages at the beginning of your Java file:
+
+```java
+import com.dynamsoft.core.EnumErrorCode;
+import com.dynamsoft.cvr.CaptureVisionRouter;
+import com.dynamsoft.cvr.CapturedResult;
+import com.dynamsoft.cvr.EnumPresetTemplate;
+import com.dynamsoft.dbr.BarcodeResultItem;
+import com.dynamsoft.dbr.DecodedBarcodesResult;
+import com.dynamsoft.license.LicenseError;
+import com.dynamsoft.license.LicenseException;
+import com.dynamsoft.license.LicenseManager;
+```
+
+### Initialize the License Key
+
+Add the following code inside the `main` method to initialize the license for using the SDK in the application:
+
+```java
+try {
+ LicenseError licenseError = LicenseManager.initLicense("DLS2eyJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSJ9");
+ if (licenseError.getErrorCode() != EnumErrorCode.EC_OK) {
+ System.out.println("License initialization failed: ErrorCode: " + licenseError.getErrorCode() + ", ErrorString: " + licenseError.getErrorString());
+ return;
+ }
+} catch (LicenseException e) {
+ System.out.println("License initialization failed: ErrorCode: " + e.getErrorCode() + ", ErrorString: " + e.getErrorString());
+ return;
+}
+// codes from following steps
+```
+
+> The string "DLS2eyJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSJ9" here is a free public trial license. Note that network connection is required for this license to work. When it expires, you can request a 30-day free trial license from the Customer Portal.
+
+### Create a CaptureVisionRouter Instance
+
+```java
+CaptureVisionRouter cvRouter = new CaptureVisionRouter();
+```
+
+### Invoke the Barcode Capturing
+
+```java
+CapturedResult[] results = cvRouter.captureMultiPages("[PATH-TO-THE-IMAGE-FILE]", EnumPresetTemplate.PT_READ_BARCODES);
+```
+
+> Please change the `[PATH-TO-THE-IMAGE-FILE]` to a real barcode image file path.
+
+### Filter and Get Barcode Details
+
+```java
+if (results == null || results.length == 0) {
+ System.out.println("No barcode detected.");
+} else {
+ for (int index = 0; index < results.length; index++) {
+ CapturedResult result = results[index];
+ if (result.getErrorCode() != EnumErrorCode.EC_OK) {
+ System.out.println("Error: " + result.getErrorCode() + ", " + result.getErrorString());
+ }
+
+ DecodedBarcodesResult barcodeResult = result.getDecodedBarcodesResult();
+ BarcodeResultItem[] items = barcodeResult != null ? barcodeResult.getItems() : null;
+ if (items == null || items.length == 0) {
+ System.out.println("No barcode detected.");
+ } else {
+ System.out.println("Decoded " + items.length + " barcodes.");
+ for (int i = 0; i < items.length; i++) {
+ BarcodeResultItem item = items[i];
+ System.out.println("Result " + (i + 1));
+ System.out.println("Barcode Format: " + item.getFormatString());
+ System.out.println("Barcode Text: " + item.getText());
+ }
+ }
+ }
+}
+```
+
+### Build and Run the Project
+
+1. Save the `ReadAnImage.java` file.
+2. Open terminal or command prompt and navigate to the project root directory.
+3. Compile and run the project using Maven:
+
+```
+mvn compile exec:java -Dexec.mainClass="ReadAnImage"
+```
+
+4. You will see the output message in the console like
+
+```
+Decoded 2 barcodes
+Result 1
+Barcode Format: XXX
+Barcode Text: XXX
+Result 2
+Barcode Format: XXX
+Barcode Text: XXX
+```
+
+## Process Multiple Images
+
+If, instead of processing one single image, you need to process many images at once, you can follow these steps:
+
+> These steps follow the step [Create a CaptureVisionRouter Instance](#create-a-capturevisionrouter-instance) mentioned above.
+
+> You can download the entire source code from here.
+
+
+### Create an ImageSource as the Input
+
+An `ImageSource` is required when creating a multi-image processing application. You can either utilize ready-made image sources such as [`FileFetcher`]({{ site.dcvb_java_api }}utility/file-fetcher.html) and [`DirectoryFetcher`]({{ site.dcvb_java_api }}utility/directory-fetcher.html), or customize your own image source based on the base class [`ImageSourceAdapter`]({{ site.dcvb_java_api }}core/basic-classes/image-source-adapter.html).
+
+First, you need to import the additional required classes:
+
+```java
+import com.dynamsoft.core.basic_structures.FileImageTag;
+import com.dynamsoft.core.basic_structures.ImageTag;
+import com.dynamsoft.cvr.*;
+import com.dynamsoft.utility.DirectoryFetcher;
+import com.dynamsoft.utility.UtilityException;
+```
+
+In this sample, we will use the `DirectoryFetcher` to retrieve images from a local directory.
+
+```java
+DirectoryFetcher fetcher = new DirectoryFetcher();
+fetcher.setDirectory("[THE DIRECTORY THAT HOLDS THE IMAGES]");
+```
+
+> Please change the `[THE DIRECTORY THAT HOLDS THE IMAGES]` to full path of the directory holding barcode image files.
+
+### Implement a CapturedResultReceiver as the Output Listener
+
+Create a class `MyCapturedResultReceiver` to extend the `CapturedResultReceiver` class, and get the barcode results in `onDecodedBarcodesReceived` callback method.
+
+```java
+class MyCapturedResultReceiver extends CapturedResultReceiver {
+ @Override
+ public void onDecodedBarcodesReceived(DecodedBarcodesResult result) {
+ ImageTag tag = result.getOriginalImageTag();
+ if (tag instanceof FileImageTag) {
+ System.out.println("File: " + ((FileImageTag)tag).getFilePath());
+ }
+
+ if (result.getErrorCode() != EnumErrorCode.EC_OK) {
+ System.out.println("Error: " + result.getErrorString());
+ } else {
+ BarcodeResultItem[] items = result.getItems();
+ System.out.println("Decoded " + items.length + " barcodes.");
+ for (int index = 0; index < items.length; index++) {
+ BarcodeResultItem item = items[index];
+ System.out.println("Result " + (index + 1));
+ System.out.println("Barcode Format: " + item.getFormatString());
+ System.out.println("Barcode Text: " + item.getText());
+ }
+ }
+ }
+}
+```
+
+### Handle Capture Stoppage by Implementing an ImageSource State Listener
+
+Create a class `MyImageSourceStateListener` to implement the `ImageSourceStateListener` interface, and call `stopCapturing` in `onImageSourceStateReceived` callback method when the state is `ISS_EXHAUSTED`.
+
+```java
+class MyImageSourceStateListener implements ImageSourceStateListener {
+ CaptureVisionRouter cvRouter;
+
+ public MyImageSourceStateListener(CaptureVisionRouter cvRouter) {
+ this.cvRouter = cvRouter;
+ }
+
+ @Override
+ public void onImageSourceStateReceived(int state) {
+ if (state == EnumImageSourceState.ISS_EXHAUSTED) {
+ if (cvRouter != null) {
+ cvRouter.stopCapturing();
+ }
+ }
+ }
+}
+```
+
+### Register the Input, Output Listener and ImageSource State Listener to the CaptureVisionRouter Instance
+
+```java
+try {
+ cvRouter.setInput(fetcher);
+ MyCapturedResultReceiver receiver = new MyCapturedResultReceiver();
+ cvRouter.addResultReceiver(receiver);
+ MyImageSourceStateListener listener = new MyImageSourceStateListener(cvRouter);
+ cvRouter.addImageSourceStateListener(listener);
+} catch (CaptureVisionException e) {
+ System.out.println("Error setting up capture vision router: " + e.getMessage());
+}
+```
+
+### Start the Capturing Process
+
+Call the method `startCapturing()` to start processing all the images in the specified folder.
+
+```java
+try {
+ cvRouter.startCapturing("", true);
+} catch (CaptureVisionException e) {
+ if (e.getErrorCode() != EnumErrorCode.EC_OK) {
+ System.out.println("Error: " + e.getErrorCode());
+ }
+}
+```
+
+During the process, the callback method `onDecodedBarcodesReceived()` is triggered each time processing of an image is finished. After all images are processed, the listener method `onImageSourceStateReceived()` will be triggered while the image source state is `ISS_EXHAUSTED` and the process is stopped with the method `stopCapturing()`.
+
+### Build and Run the Project Again
+
+Please refer to [Build and Run the Project](#build-and-run-the-project).
+
diff --git a/programming-old/java/user-guide/explore-features/index.md b/programming/java/user-guide/explore-features/index.md
similarity index 100%
rename from programming-old/java/user-guide/explore-features/index.md
rename to programming/java/user-guide/explore-features/index.md
diff --git a/programming-old/java/user-guide/index.md b/programming/java/user-guide/index.md
similarity index 100%
rename from programming-old/java/user-guide/index.md
rename to programming/java/user-guide/index.md
diff --git a/programming-old/java/user-guide/use-cases/index.md b/programming/java/user-guide/use-cases/index.md
similarity index 100%
rename from programming-old/java/user-guide/use-cases/index.md
rename to programming/java/user-guide/use-cases/index.md
diff --git a/programming/python/release-notes/index.md b/programming/python/release-notes/index.md
index bc5a503b..f45186a7 100644
--- a/programming/python/release-notes/index.md
+++ b/programming/python/release-notes/index.md
@@ -8,6 +8,7 @@ needAutoGenerateSidebar: false
# Release Notes for Python Edition
+- [11.0.6000 (08/06/2025)]({{ site.dbr_python_release_notes }}python-11.html#1106000-08062025)
- [11.0.4000 (07/15/2025)]({{ site.dbr_python_release_notes }}python-11.html#1104000-07152025)
- [11.0.3000 (05/15/2025)]({{ site.dbr_python_release_notes }}python-11.html#1103000-05152025)
- [11.0.2000 (04/09/2025)]({{ site.dbr_python_release_notes }}python-11.html#1102000-04092025)
diff --git a/programming/python/release-notes/python-11.md b/programming/python/release-notes/python-11.md
index de69d81a..881c1a21 100644
--- a/programming/python/release-notes/python-11.md
+++ b/programming/python/release-notes/python-11.md
@@ -8,6 +8,17 @@ needGenerateH3Content: false
# Release Notes for Python Edition - 11.x
+## 11.0.6000 (08/06/2025)
+
+### Changed
+
+- `start_capturing` now stops immediately and returns a license-related error code if none of the tasks have a valid license, instead of proceeding and returning an empty result.
+
+### Fixed
+
+- Fixed a bug that caused a crash when using a specific type of license.
+- Fixed various minor bugs and improved overall stability.
+
## 11.0.4000 (07/15/2025)
### New