Stamp samples
Basics
Suggested code sample
First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
Then should login using the method "login". You can access the "login" method from webservice object "ws" as is shown below:
ws.login(user, password);
Once you are logged with the webservices the session is keep in the webservice Object. Then you can use the other API method
At this point you can use all the Stamp methods from "stamp" class as is shown below:
ws.stamp.getAllStamps();
Methods
getAllStamps
Description:
Method | Return values | Description |
---|---|---|
getAllStamps() |
List<StampItem> |
Returns a list of the stamp items |
Example:
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
Description:
Method | Return values | Description |
---|---|---|
getStampTextByPk(long id, String uuid) |
StampText |
Return the stamp of type Text by Id. |
Example:
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 stampId = 1;
StampText stampText = ws.stamp.getStampTextByPk(stampId, "928de61e-6ceb-4f94-bf20-9ba2405c5cee");
System.out.println(stampText.getName());
System.out.println(stampText.getDescription());
} catch (Exception e) {
e.printStackTrace();
}
}
}
getStampImageByPk
Description:
Method | Return values | Description |
---|---|---|
getStampImageByPk(long id, String uuid) |
StampImage |
Return the stamp of type image by Id. |
Example:
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 stampId = 3;
StampImage stampImage = ws.stamp.getStampImageByPk(stampId, "928de61e-6ceb-4f94-bf20-9ba2405c5cee");
System.out.println(stampImage.getName());
System.out.println(stampImage.getDescription());
} catch (Exception e) {
e.printStackTrace();
}
}
}
calculateStampCoordinates
Description:
Method | Return values | Description | ||||
---|---|---|---|---|---|---|
calculateStampCoordinates(long imgToStampWidth, long imgToStampHeight, long floatingDivWidth, |
StampCoordinates |
Return the calculated stamp coordinates. |
||||
In Expr. X and Expr. Y input fields you can put more than a simple number. Currently, the following macros are defined:
So to center a stamp in the page you can use:
The parameter stampAlign. Available values:
The parameter stampAlign is the Text Align Available values:
|
Example:
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
Description:
Method | Return values | Description |
---|---|---|
calculateStampExpressions(long imgToStampWidth, long imgToStampHeight, long posX, long posY) |
StampExpressions |
Return the calculated stamp expressions for X and Y. |
Example:
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
Description:
Method | Return values | Description |
---|---|---|
stampText(String uuid, long id) |
void |
Stamp text in a document. |
Example:
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 stampTestId = 1;
ws.stamp.stampText("babe24df-c443-49a5-9453-39dfc9b27924", stampTestId);
} catch (Exception e) {
e.printStackTrace();
}
}
}
stampImage
Description:
Method | Return values | Description |
---|---|---|
stampImage(String uuid, long id) |
void |
Stamp image in a document. |
Example:
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;
ws.stamp.stampImage("babe24df-c443-49a5-9453-39dfc9b27924", id);
} catch (Exception e) {
e.printStackTrace();
}
}
}
stampImageManually
Description:
Method | Return values | Description | ||||
---|---|---|---|---|---|---|
stampImageManually(String uuid, long id, String exprX, String exprY, String range, String personalStampUuid) |
void |
Stamp in a document with an image that is in openkm |
||||
The id is the id of an image stamp which is created in the administrator. The exprX is the expression to set the position in X coordinates. The exprY is the expression to set the position in Y coordinates. The personalStampUuid must be a valid document UUID. The document must be an image ( jpg or png ).
In Expr. X and Expr. Y input fields you can put more than a simple number. Currently, the following macros are defined:
So to center a stamp in the page you can use:
|
Example:
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();
}
}
}
stampImageCustom
Description:
Method | Return values | Description | ||||
---|---|---|---|---|---|---|
stampImageCustom(String uuid, long id, String exprX, String exprY, String range, double ratio, InputStream is) |
void |
Stamp in a document with a custom image. |
||||
The id is the id of an image stamp which is created in the administrator. The exprX is the expression to set the position in X coordinates. The exprY is the expression to set the position in Y coordinates. In Expr. X and Expr. Y input fields you can put more than a simple number. Currently, the following macros are defined:
So to center a stamp in the page you can use:
|
Example:
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
Description:
Method | Return values | Description |
---|---|---|
calculateFlyImageDimensions(String uuid, long imgToStampWidth, long imgToStampHeight, |
StampImageSize |
Return the calculated image to stamp height and width size. |
Example:
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
Description:
Method | Return values | Description |
---|---|---|
getPersonalStamps() |
List<Document> |
Returns a list of personal seals. |
Return a list of documents of type image ( jpg or png ) from /okm:templates/ userId/stamps |
Example:
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
Description:
Method | Return values | Description |
---|---|---|
getPersonalStampImage(String uuid, long id) |
StampPersonalImage |
Return the personal seal processed. |
When stamping a document with an image, the image also can have a text layer. This method processes the image and returns an image with the text layer. The uuid must be an uuid returned by the method getPersonalStamps.
|
Example:
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();
}
}
}