Stamp samples
Aspectos básicos
Sección titulada «Aspectos básicos»Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»Primero debe crear el objeto del servicio web:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);A continuación, debe iniciar sesión mediante el método “login”. Puede acceder al método “login” desde el objeto del servicio web “ws”, tal y como se muestra a continuación:
ws.login(user, password);Llegados a este punto puede usar todos los métodos de Stamp desde la clase “stamp”, tal y como se muestra a continuación:
ws.stamp.getAllStamps();Métodos
Sección titulada «Métodos»getAllStamps
Sección titulada «getAllStamps»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAllStamps() | List |
Devuelve una lista de elementos de sello (stamp). |
Ejemplo:
package com.openkm;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampItem;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); List<StampItem> result = ws.stamp.getAllStamps(); for (StampItem stampItem : result) { System.out.println(stampItem.getName()); } } catch (Exception e) { e.printStackTrace(); } }}getStampTextByPk
Sección titulada «getStampTextByPk»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getStampTextByPk(long id, String uuid) | StampText | Devuelve el sello de tipo Text por ID. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampText;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); int stampTextId = 1; StampText stampText = ws.stamp.getStampTextByPk(stampTextId, "928de61e-6ceb-4f94-bf20-9ba2405c5cee"); System.out.println(stampText); System.out.println(stampText.getName()); System.out.println(stampText.getDescription()); } catch (Exception e) { e.printStackTrace(); } }}getStampImageByPk
Sección titulada «getStampImageByPk»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getStampImageByPk(long id, String uuid) | StampImage | Devuelve el sello de tipo imagen por ID. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampImage;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); int stampImageId = 3; StampImage stampImage = ws.stamp.getStampImageByPk(stampImageId, "928de61e-6ceb-4f94-bf20-9ba2405c5cee"); System.out.println(stampImage); System.out.println(stampImage.getName()); System.out.println(stampImage.getDescription()); } catch (Exception e) { e.printStackTrace(); } }}getStampBarcodeByPk
Sección titulada «getStampBarcodeByPk»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getStampBarcodeByPk(long id, String uuid) | StampBarcode | Devuelve el sello de tipo código de barras por ID. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampBarcode;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); int stampBarcodeId = 3; StampBarcode stampBarcode = ws.stamp.getStampBarcodeByPk(stampBarcodeId, "6330d2a0-529f-4c14-baa1-ce6a92004e01"); System.out.println(stampBarcode); System.out.println(stampBarcode.getName()); System.out.println(stampBarcode.getDescription()); } catch (Exception e) { e.printStackTrace(); } }}calculateStampCoordinates
Sección titulada «calculateStampCoordinates»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| calculateStampCoordinates(long imgToStampWidth, long imgToStampHeight, long floatingDivWidth, long floatingDivHeight, String exprX, String exprY, String stampType, String stampAlign) |
StampCoordinates | Devuelve las coordenadas calculadas del sello. |
El parámetro stampAlign es la alineación del texto.
Valores disponibles:
- left
- center
- right
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampCoordinates;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Parameters long imgToStampWidth = 100; long imgToStampHeight = 100; long floatingDivWidth = 250; long floatingDivHeight = 300; String exprX = "PAGE_CENTER - IMAGE_WIDTH / 2"; String exprY = "PAGE_MIDDLE - IMAGE_HEIGHT / 2"; String stampType = "text"; String stampAlign = "center"; StampCoordinates stampCoordinates = ws.stamp.calculateStampCoordinates(imgToStampWidth, imgToStampHeight, floatingDivWidth, floatingDivHeight, exprX, exprY, stampType, stampAlign); System.out.println("X = " + stampCoordinates.getX() + ", Y = " + stampCoordinates.getY());
} catch (Exception e) { e.printStackTrace(); } }}calculateStampExpressions
Sección titulada «calculateStampExpressions»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| calculateStampExpressions(long imgToStampWidth, long imgToStampHeight, long posX, long posY) | StampExpressions | Devuelve las expresiones calculadas del sello para X e Y. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampExpressions;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Parameters long imgToStampWidth = 100; long imgToStampHeight = 100; long posX = 10; long posY = 50; StampExpressions stampExpressions = ws.stamp.calculateStampExpressions(imgToStampWidth, imgToStampHeight, posX, posY); System.out.println("X = " + stampExpressions.getExprX() + ", Y = " + stampExpressions.getExprY());
} catch (Exception e) { e.printStackTrace(); } }}stampText
Sección titulada «stampText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampText(String uuid, long id) | void | Estampa texto en un documento. |
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 user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stampTextId = 1; ws.stamp.stampText("babe24df-c443-49a5-9453-39dfc9b27924", stampTextId); } catch (Exception e) { e.printStackTrace(); } }}stampImage
Sección titulada «stampImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampImage(String uuid, long id) | void | Estampa una imagen en un documento. |
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 user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stampImageId = 1; ws.stamp.stampImage("babe24df-c443-49a5-9453-39dfc9b27924", stampImageId); } catch (Exception e) { e.printStackTrace(); } }}stampBarcode
Sección titulada «stampBarcode»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampBarcode(String uuid, long id) | void | Estampa un código de barras en un documento. |
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 user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stampBarcodeId = 1; ws.stamp.stampBarcode("f02053e3-2264-4040-bb84-67983a0208f7", stampBarcodeId); } catch (Exception e) { e.printStackTrace(); } }}stampImageManually
Sección titulada «stampImageManually»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampImageManually(String uuid, long id, String exprX, String exprY, String range, String personalStampUuid) | void | Estampa un documento con una imagen que ya está en OpenKM |
El id es el ID de un sello de imagen creado por el administrador.
El exprX es la expresión para establecer la posición en la coordenada X.
El exprY es la expresión para establecer la posición en la coordenada Y.
El personalStampUuid debe ser el UUID de un documento válido. El documento debe ser una imagen (jpg o png).
En los campos Expr. X y Expr. Y puede poner algo más que un simple número. Actualmente están definidas las siguientes macros:
- IMAGE_WIDTH
- IMAGE_HEIGHT
- PAGE_WIDTH
- PAGE_HEIGHT
- PAGE_CENTER
- PAGE_MIDDLE
Así, para centrar un sello en la página puede usar:
| Expr. X | PAGE_CENTER |
| Expr. Y | PAGE_MIDDLE |
| ::: |
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 user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long id = 1; String exprX = "PAGE_CENTER - IMAGE_WIDTH / 2"; String exprY = "PAGE_MIDDLE - IMAGE_HEIGHT / 2"; ws.stamp.stampImageManually("055b5206-35d0-4351-ba92-c304bbba7ddf", id, exprX, exprY, "", "ac9cdfb4-8051-4458-a4bb-ca93e6cf464e"); } catch (Exception e) { e.printStackTrace(); } }}stampTextCustom
Sección titulada «stampTextCustom»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampTextCustom(String uuid, long id, String text, String exprX, String exprY, String range) | void | Estampa un texto personalizado en un documento. |
El id es el ID de un sello de imagen creado por el administrador.
El exprX es la expresión para establecer la posición en la coordenada X.
El exprY es la expresión para establecer la posición en la coordenada Y.
En los campos Expr. X y Expr. Y puede poner algo más que un simple número. Actualmente están definidas las siguientes macros:
- IMAGE_WIDTH
- IMAGE_HEIGHT
- PAGE_WIDTH
- PAGE_HEIGHT
- PAGE_CENTER
- PAGE_MIDDLE
Así, para centrar un sello en la página puede usar:
| Expr. X | PAGE_CENTER |
| Expr. Y | PAGE_MIDDLE |
| ::: |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
import java.io.FileInputStream;import java.io.InputStream;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stampTextId = 1; String text = "OpenKM"; String exprX = "PAGE_CENTER"; String exprY = "PAGE_MIDDLE"; InputStream is = new FileInputStream("/home/gnujavasergio/okm/logo.png"); ws.stamp.stampTextCustom("05b14eee5-2e57-4d1d-925a-c9bc3f526e24", stampTextId, text, exprX, exprY, ""); } catch (Exception e) { e.printStackTrace(); } }}stampImageCustom
Sección titulada «stampImageCustom»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampImageCustom(String uuid, long id, String exprX, String exprY, String range, double ratio, InputStream is) | void | Estampa una imagen personalizada en un documento. |
El id es el ID de un sello de imagen creado por el administrador.
El exprX es la expresión para establecer la posición en la coordenada X.
El exprY es la expresión para establecer la posición en la coordenada Y.
En los campos Expr. X y Expr. Y puede poner algo más que un simple número. Actualmente están definidas las siguientes macros:
- IMAGE_WIDTH
- IMAGE_HEIGHT
- PAGE_WIDTH
- PAGE_HEIGHT
- PAGE_CENTER
- PAGE_MIDDLE
Así, para centrar un sello en la página puede usar:
| Expr. X | PAGE_CENTER |
| Expr. Y | PAGE_MIDDLE |
| ::: |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
import java.io.FileInputStream;import java.io.InputStream;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long id = 1; String exprX = "PAGE_CENTER - IMAGE_WIDTH / 2"; String exprY = "PAGE_MIDDLE - IMAGE_HEIGHT / 2"; InputStream is = new FileInputStream("/home/gnujavasergio/okm/logo.png"); ws.stamp.stampImageCustom("055b5206-35d0-4351-ba92-c304bbba7ddf", id, exprX, exprY, "", 0, is); } catch (Exception e) { e.printStackTrace(); } }}calculateFlyImageDimensions
Sección titulada «calculateFlyImageDimensions»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| calculateFlyImageDimensions(String uuid, long imgToStampWidth, long imgToStampHeight, long floatingImageWidth, long floatingImageHeight, int pageNumber) |
StampImageSize | Devuelve el alto y ancho calculados para la imagen a estampar. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampImageSize;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Parameters long imgToStampWidth = 100; long imgToStampHeight = 100; long floatingImageWidth = 300; long floatingImageHeight = 300; int pageNumber = 2;
StampImageSize stampImageSize = ws.stamp.calculateFlyImageDimensions("babe24df-c443-49a5-9453-39dfc9b27924", imgToStampWidth, imgToStampHeight, floatingImageWidth, floatingImageHeight, pageNumber); System.out.println(stampImageSize); } catch (Exception e) { e.printStackTrace(); } }}getPersonalStamps
Sección titulada «getPersonalStamps»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPersonalStamps() | List |
Devuelve una lista de sellos personales. |
Devuelve una lista de documentos de tipo imagen (jpg o png) de /okm:templates/userId/stamps
Ejemplo:
package com.openkm;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); List<Document> result = ws.stamp.getPersonalStamps(); for (Document doc : result) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}getPersonalStampImage
Sección titulada «getPersonalStampImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPersonalStampImage(String uuid, long id) | StampPersonalImage | Devuelve el sello personal procesado. |
Al estampar un documento con una imagen, la imagen también puede tener una capa de texto.
Este método procesa la imagen y devuelve una imagen con la capa de texto.
El uuid debe ser un UUID devuelto por el método getPersonalStamps.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.StampPersonalImage;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stampId = 1; StampPersonalImage stampPersonalImage = ws.stamp.getPersonalStampImage("928de61e-6ceb-4f94-bf20-9ba2405c5cee", stampId); System.out.println(stampPersonalImage); } catch (Exception e) { e.printStackTrace(); } }}