Ir al contenido
Otras versiones

Cargando…

PDF samples

Primero debe crear el objeto webservice:

OKMWebservices ws = OKMWebservicesFactory.getInstance(host);

A continuación, debe iniciar sesión mediante el método login. Puede acceder a él desde el objeto webservice ws, tal y como se muestra a continuación:

ws.login(user, password);

Llegados a este punto puede usar todos los métodos de PDF desde la clase pdf, tal y como se muestra a continuación:

InputStream is = ws.pdf.getImage("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", 1, null);

Descripción:

Método Valores de retorno Descripción
getImage(String uuid, int page, String size) InputStream Devuelve una imagen de la página indicada.

El valor de uuid es el UUID del documento.

El parámetro page es el número de página del documento, empezando en 1.

El parámetro size es opcional. Cuando se indica, redimensiona la imagen de la página; en caso contrario, se usa el valor por defecto.

Ejemplo:

package com.openkm;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
InputStream is = ws.pdf.getImage("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", 1, null);
OutputStream fos = new FileOutputStream("/home/openkm/page-1.png");
IOUtils.copy(is, fos);
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(fos);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
split(String uuid, String dstId, String baseName, List pages) List Devuelve una lista de documentos resultantes de la operación de división.

El valor de uuid es el UUID del documento de origen.

El valor de dstId es el UUID de la carpeta de destino. Si no se indica, se usa la carpeta padre del documento de origen.

El valor de baseName es el nombre base usado para generar los documentos resultantes de la división. Por ejemplo, si baseName es “test” y pages es [1, 3], los ficheros resultantes se llamarán “test-001.pdf” y “test-003.pdf”.

El valor de pages es la lista de números de página por los que dividir el documento.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.bean.*;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
List<Integer> pages = new ArrayList<>();
pages.add(2);
pages.add(3);
List<Document> documents = ws.pdf.split("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", "0be057f1-efac-4e09-9c10-e7f27c731442", "split", pages);
System.out.println(documents);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
extract(String uuid, String dstId, String name, List pages) Document Devuelve el nuevo documento creado con las páginas extraídas.

El valor de uuid es el UUID del documento de origen.

El valor de dstId es el UUID de la carpeta de destino. Si no se indica, se usa la carpeta padre del documento de origen.

El valor de name es el nombre del nuevo documento que contiene las páginas extraídas.

El valor de pages es la lista de números de página a extraer.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.bean.*;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class PdfExample {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
List<Integer> pages = new ArrayList<>();
pages.add(2);
pages.add(3);
Document document = ws.pdf.extract("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", "0be057f1-efac-4e09-9c10-e7f27c731442", "extract.pdf", pages);
System.out.println(document);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
remove(String uuid, String dstId, String name, List pages) Document Devuelve un nuevo documento con las páginas indicadas eliminadas.

El valor de uuid es el UUID del documento de origen.

El valor de dstId es el UUID de la carpeta de destino. Si no se indica, se usa la carpeta padre del documento de origen.

El valor de name es el nombre del nuevo documento.

El valor de pages es la lista de números de página a eliminar.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.bean.*;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class PdfExample {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
List<Integer> pages = new ArrayList<>();
pages.add(2);
pages.add(3);
Document document = ws.pdf.remove("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", "0be057f1-efac-4e09-9c10-e7f27c731442", "remove.pdf", pages);
System.out.println(document);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
rotate(String uuid, String dstId, String name, Integer angle, List pages) Document Devuelve un nuevo documento con las páginas indicadas rotadas.

El valor de uuid es el UUID del documento de origen.

El valor de dstId es el UUID de la carpeta de destino. Si no se indica, se usa la carpeta padre del documento de origen.

El valor de name es el nombre del nuevo documento.

El valor de angle es el ángulo de rotación aplicado a las páginas indicadas.

El valor de pages es la lista de números de página a rotar.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.bean.*;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class PdfExample {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
List<Integer> pages = new ArrayList<>();
pages.add(2);
pages.add(3);
Document document = ws.pdf.rotate("e7d6860a-7e0b-4823-bd3d-75f88be1eedf", "0be057f1-efac-4e09-9c10-e7f27c731442", "rotate.pdf", 180, pages);
System.out.println(document);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
insertPages(String uuid, InsertPagesRequest request) Document Devuelve el nuevo documento creado con las páginas insertadas.

El valor de uuid es el UUID del documento de destino donde se insertarán las páginas.

El objeto InsertPagesRequest contiene los siguientes campos:

  • insertOperations: una lista de objetos PageInsertOperation, cada uno describiendo un paso de inserción.
  • dstId: el UUID de la carpeta de destino para el documento resultante. Si no se indica, se usa la carpeta padre del documento de destino.
  • name: el nombre del nuevo documento a generar.

Cada objeto PageInsertOperation contiene los siguientes campos:

  • srcId: el UUID del documento de origen del que se tomarán las páginas.
  • pages: la lista de números de página a tomar del documento de origen.
  • insertFromPage: la posición en el documento de destino en la que se insertarán las páginas.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
import com.openkm.sdk4j.bean.Document;
import com.openkm.sdk4j.bean.InsertPagesRequest;
import com.openkm.sdk4j.bean.PageInsertOperation;
import java.util.Arrays;
public class PdfExample {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
// Create the insert pages request
InsertPagesRequest request = new InsertPagesRequest();
request.setName("merged_document.pdf");
request.setDstId("e7d6860a-7e0b-4823-bd3d-75f88be1eedf");
// Define a page insertion operation
PageInsertOperation operation = new PageInsertOperation();
operation.setSrcId("a573da75-ba1e-4f5b-98d2-fbb7da5f1cf1"); // Source document UUID
operation.setPages(Arrays.asList(1, 2, 3)); // Pages to take from source
operation.setInsertFromPage(1); // Insert at position 1 in target
request.getInsertOperations().add(operation);
// Insert pages into the target document
Document result = ws.pdf.insertPages("6a54d98b-6454-4484-8172-8359a2b4f2f2", request);
System.out.println("New document created: " + result.getUuid());
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
optimize(String uuid) boolean Devuelve true cuando el documento se ha optimizado correctamente.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(username, password);
boolean success = ws.pdf.optimize("cd4f69ed-e517-408b-b7eb-95cfe371ecba");
System.out.println("optimize success: " + success);
} catch (Exception e) {
e.printStackTrace();
}
}
}