Order form of presentation "LibOpenOffice"
* Please fill out the form and click "Submit."
After sending you will be contacted shortly to agree on the date and time of a possible presentation.
x
Question form on "LibOpenOffice"
* Please fill out the form and click "Send."
x
Leave feedback on LibOpenOffice

Please, help us to improve LibOpenOffice library. Leave your e-mail address.
In future we can send you some questions via e-mail.

x
Buy LibOpenOffice library
Personal license
Licence for limited number of computers. You will receive developer's key and library that can be used fully only on specific number of computers (identified by their hardware ID) according to number of licences paid.
Price: 19$ x = 19$
Unlimited licence
Licence for unlimited number of computers. You will receive developer's key and library that can be used fully on any number of computers.
Price: 199$
Registration process
After the payment transaction you will immediatelly receive e-mail with confirmation. In a short time you will receive developer's key and library on e-mail adress that was specified during the payment. Usually it takes one business day.
Technical support
All questions and technical support is available via E-Mail: openoffice@4k.com.ua or Skype: kmi_4k.
x
Solutions Others LibOpenOffice
LibOpenOffice
You only just paid 4k-soft products through a system of payment paypal. When paypal confirm with the successful transaction - You will be notified with a letter and a link to intruktsiyamy jump program "LibOpenOffice"
Изображение програмы LibOpenOffice

OpenOffice library for software developers.
Library can be used to create, read and write all OpenOffice documents.

Reading and writing OpenOffice documents

LibOpenOffice allows applications to read/write all Apache OpenOffice file formats: *.odt, *.ods, *.odp and so on. Library can create new document on fly, extract any data from existing document or write data to existing document. It can be used by almost all programming languages developers for creating reports or other purposes.

 

High performance

LibOpenOffice writing speed on 2.0 GHz CPU provided in table below:

OpenOffice Writer *.odt null
OpenOffice Calc *.ods 350 records per second

 

 

 

Simple integration and interoperation

LibOpenOffice has C/C++ headers, C# class for including in your project. Library requires OpenOffice installation on computer and works thought its components.

 

Royalty-free distribution

Our clients can use unlimited version of LibOpenOffice library in theirs commercial applications without any fees.
Apache OpenOffice software is also free unlike Microsoft Office.

 

Code examples

Calc. Generate new spreadsheet example

		Download result
		
			#include "ooapi.h"
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("private:factory/scalc", false)){
						t->setSheet(0);
						t->setText(0,0,"Hello world!");
						t->setVal(0,1, 500);
					}
					t->export2XLS("file:///D:/TEST.xls");
				}
			}
 

Calc. Create invoice example

		Download result
		
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("private:factory/scalc", false)){
						t->delSheetById(0);
						t->delSheetById(0);
						t->insertSheet("Invoice");
						t->delSheetById(0);
 
						t->setSheet(0);
						t->setColWidth(0,3);
 
						t->setFont4Col(1, "Calibri");
						t->setFont4Col(2, "Calibri");
						t->setFont4Col(3, "Calibri");
						t->setFont4Col(4, "Calibri");
 
						t->mergeRange("D2", "E2");
						t->setFontSize(3,1,18);
 
						t->setText(3,1,"Invoice #467");
						t->setBgColor(3,1,253,251,214);
						t->setBorders(3,1,1,1,1,1,255,255,255);
 
						t->setFontSize(3,2,11);
						t->setText(3,2,"Date: 25.06.2013");
						t->setBorders(3,2,0,0,1,0,255,255,255);
 
						t->setFontSize(3,3,11);
						t->setText(3,3,"Customer ID: 38134");
						t->setBorders(3,3,0,0,1,0,255,255,255);
 
						t->setColWidth(1,69);
						t->setFontSize(1,5,11);
						t->setText(1,5,"Name: Jacob Smith");
 
						t->setFontSize(1,6,11);
						t->setText(1,6,"Adress:  County Ave, Midland City, Alabama (AL), 36331");
						t->setBorders(1,6,0,0,1,0,255,255,255);
 
						t->setFontSize(1,7,11);
						t->setText(1,7,"Phone: 334-123-4567");
 
						t->setFontSize(1,8,11);
						t->setText(1,8,"E-Mail: smith.jacob@gmail.com");
 
						t->setFontSize(1,10,11);
						t->setText(1,10,"Item, discription");
						t->setBorders(1,10,1,1,1,1,0,0,0);
						t->setBgColor(1,10,253,251,214);
						t->setHoriz(1,10,2);
 
						t->setFontSize(2,10,11);
						t->setText(2,10,"QTY");
						t->setBorders(2,10,1,1,1,1,0,0,0);
						t->setBgColor(2,10,253,251,214);
						t->setHoriz(2,10,2);
						t->setFontSize(3,10,11);
						t->setText(3,10,"Unit price");
						t->setBorders(3,10,1,1,1,1,0,0,0);
						t->setBgColor(3,10,253,251,214);
						t->setHoriz(3,10,2);
 
						t->setFontSize(4,10,11);
						t->setText(4,10,"Line Price");
						t->setBorders(4,10,1,1,1,1,0,0,0);
						t->setBgColor(4,10,253,251,214);
						t->setHoriz(4,10,2);
 
						t->setFontSize(1,11,11);
						t->setText(1,11,"Electric kettle");
						t->setBorders(1,11,1,1,1,0,0,0,0);
 
						t->setFontSize(1,12,11);
						t->setText(1,12,"Plate");
						t->setBorders(1,12,1,0,1,0,0,0,0);
 
						t->setFontSize(1,13,11);
						t->setText(1,13,"Coffee cup");
						t->setBorders(1,13,1,0,1,1,0,0,0);
 
						t->setFontSize(2,11,11);
						t->setText(2,11,"1");
						t->setBorders(2,11,1,1,1,0,0,0,0);
 
						t->setFontSize(2,12,11);
						t->setText(2,12,"4");
						t->setBorders(2,12,1,0,1,0,0,0,0);
 
						t->setFontSize(2,13,11);
						t->setText(2,13,"6");
						t->setBorders(2,13,1,0,1,1,0,0,0);
 
						t->setFontSize(3,11,11);
						t->setHoriz(3,11,3);
						t->setText(3,11,"57.43");
						t->setBorders(3,11,1,1,1,0,0,0,0);
 
						t->setFontSize(3,12,11);
						t->setHoriz(3,12,3);
						t->setText(3,12,"12");
						t->setBorders(3,12,1,0,1,0,0,0,0);
 
						t->setFontSize(3,13,11);
						t->setHoriz(3,13,3);
						t->setText(3,13,"5.12");
						t->setBorders(3,13,1,0,1,1,0,0,0);
 
						t->setFontSize(4,11,11);
						t->setHoriz(4,11,3);
						t->setText(4,11,"=C12*D12");
						t->setBorders(4,11,1,1,1,0,0,0,0);
 
						t->setFontSize(4,12,11);
						t->setHoriz(4,12,3);
						t->setText(4,12,"=C13*D13");
						t->setBorders(4,12,1,0,1,0,0,0,0);
 
						t->setFontSize(4,13,11);
						t->setHoriz(4,13,3);
						t->setText(4,13,"=C14*D14");
						t->setBorders(4,13,1,0,1,1,0,0,0);
 
						t->setBgColor(3,15,253,251,214);
						t->setFontSize(3,15,11);
						t->setHoriz(3,15,3);
						t->setText(3,15,"Sub total");
						t->setBorders(3,15,1,1,1,1,0,0,0);
 
						t->setBgColor(3,16,253,251,214);
						t->setFontSize(3,16,11);
						t->setHoriz(3,16,3);
						t->setText(3,16,"Taxes");
						t->setBorders(3,16,1,1,1,1,0,0,0);
 
						t->setBgColor(3,17,253,251,214);
						t->setFontSize(3,17,11);
						t->setHoriz(3,17,3);
						t->setText(3,17,"Total");
						t->setBorders(3,17,1,1,1,1,0,0,0);
 
						t->setFontSize(4,15,11);
						t->setHoriz(4,15,3);
						t->setText(4,15,"=SUM(E12:E14)");
						t->setBorders(4,15,1,1,1,1,0,0,0);
 
						t->setFontSize(4,16,11);
						t->setHoriz(4,16,3);
						t->setText(4,16,"=E16*0.2");
						t->setBorders(4,16,1,1,1,1,0,0,0);
 
						t->setFontSize(4,17,11);
						t->setHoriz(4,17,3);
						t->setText(4,17,"=SUM(E16:E17)");
						t->setBorders(4,17,1,1,1,1,0,0,0);
						t->setBold(4,17);
 
						t->mergeRange("B21", "E21");
						t->setHoriz(1,20,2);
						t->setFontSize(1,20,11);
						t->setText(1,20,"Thank you for your business!");
 
						imgPosition iPos;
						iPos.x = 500;
						iPos.y = 500;
 
 
						imgSize iSize;
						iSize.h = 1520;
						iSize.w = 5400;
						t->insertImage(iPos,iSize,"file:///D:/4k-soft.png");
					}
 
					t->export2XLS("file:///C:/Invoice.xls");
				}
			}
 

Calc. Extract and edit data from existing spreedsheet example

		Download result
		
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("file:///D:/TEST.xls", false)){
						t->setSheet(0);
						t->setColWidth(0, 50);
 
						char * text = t->getText(0,0);
						char * newtext = " LibOpenOffice!";
						strcat(text, newtext);
						t->setText(0,0, text);
 
						delete text;
						delete newtext;
 
						/////////////////////////////FONTS
						t->setText(0,3,"1.1223");
						t->setFontSize(0,3,14);
						t->setFont4Cell(0,3,"MS Comic Sans");
						t->setCellStyle(0,3,S_PERCENT);
						t->setStrikeout(0,3,true);
 
						t->setText(0,5,"12:53");
						t->setFontSize(0,5,18);
						t->setFont4Cell(0,5,"Calibri");
						t->setCellStyle(0,5,S_TIME_PA);
						t->setBold(0,5);
						t->setUnderline(0,5,true);
 
						t->setText(0,7,"1234235.23");
						t->setFontSize(0,7,8);
						t->setFont4Cell(0,7,"Arial Black");
						t->setCellStyle(0,7,S_SCTFC_F);
						t->setItalic(0,7);
 
						//////////////////////////////////FORMULA
						t->setText(0,9,"=A4*0.02");
						t->setText(0,11,"=SUM(A4;A8)");
						t->setText(0,13,"=AVERAGE(A8;A4)");
						//////////////////////////////////
 
						t->mergeRange("A16","A18");
						t->mergeRange("A20","A22");
						t->mergeRange("A24","A26");
 
						///////////////////////////////////MERGED
						t->setText(0,15,"Merged range(A16:A18)");
						t->setBorders(0,15,1,1,0,0,255,255,255);
						t->setHoriz(0,15,1);
						t->setVerticalAlignment(0,15,3);
 
						t->setText(0,19,"Merged range(A20:A22)");
						t->setBorders(0,19,0,0,1,1,255,255,255);
						t->setHoriz(0,19,2);
						t->setVerticalAlignment(0,19,2);
 
						t->setText(0,23,"Merged range(A24:A26)");
						t->setBorders(0,23,1,1,1,1,255,255,255);
						t->setHoriz(0,23,3);
						t->setVerticalAlignment(0,23,1);
 
 
						/////////////////////////////////////SAVE TO DISK
						t->export2XLS("file:///C:/styles_example.xls");
					}
				}
			}
 

 

Licence policy

LibOpenOffice is available under three types of licence:

 Demo
 (for demonstration purposes only)
 Free License agreement (english)
License agreement (russian)
 Personal
 (1 license per 1 computer)
 19$ License agreement (english)
License agreement (russian)
 Unlimited
 (for unlimited number of computers)
 199$ License agreement (english)
License agreement (russian)

 

 

 

 

 

 

Reading and writing OpenOffice documents

LibOpenOffice allows applications to read/write all Apache OpenOffice file formats: *.odt, *.ods, *.odp and so on. Library can create new document on fly, extract any data from existing document or write data to existing document. It can be used by almost all programming languages developers for creating reports or other purposes.

 

High performance

LibOpenOffice writing speed on 2.0 GHz CPU provided in table below:

OpenOffice Writer *.odt null
OpenOffice Calc *.ods 350 records per second

 

 

 

Simple integration and interoperation

LibOpenOffice has C/C++ headers, C# class for including in your project. Library requires OpenOffice installation on computer and works thought its components.

 

Royalty-free distribution

Our clients can use unlimited version of LibOpenOffice library in theirs commercial applications without any fees.
Apache OpenOffice software is also free unlike Microsoft Office.

 

Code examples

Calc. Generate new spreadsheet example

		Download result
		
			#include "ooapi.h"
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("private:factory/scalc", false)){
						t->setSheet(0);
						t->setText(0,0,"Hello world!");
						t->setVal(0,1, 500);
					}
					t->export2XLS("file:///D:/TEST.xls");
				}
			}
 

Calc. Create invoice example

		Download result
		
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("private:factory/scalc", false)){
						t->delSheetById(0);
						t->delSheetById(0);
						t->insertSheet("Invoice");
						t->delSheetById(0);
 
						t->setSheet(0);
						t->setColWidth(0,3);
 
						t->setFont4Col(1, "Calibri");
						t->setFont4Col(2, "Calibri");
						t->setFont4Col(3, "Calibri");
						t->setFont4Col(4, "Calibri");
 
						t->mergeRange("D2", "E2");
						t->setFontSize(3,1,18);
 
						t->setText(3,1,"Invoice #467");
						t->setBgColor(3,1,253,251,214);
						t->setBorders(3,1,1,1,1,1,255,255,255);
 
						t->setFontSize(3,2,11);
						t->setText(3,2,"Date: 25.06.2013");
						t->setBorders(3,2,0,0,1,0,255,255,255);
 
						t->setFontSize(3,3,11);
						t->setText(3,3,"Customer ID: 38134");
						t->setBorders(3,3,0,0,1,0,255,255,255);
 
						t->setColWidth(1,69);
						t->setFontSize(1,5,11);
						t->setText(1,5,"Name: Jacob Smith");
 
						t->setFontSize(1,6,11);
						t->setText(1,6,"Adress:  County Ave, Midland City, Alabama (AL), 36331");
						t->setBorders(1,6,0,0,1,0,255,255,255);
 
						t->setFontSize(1,7,11);
						t->setText(1,7,"Phone: 334-123-4567");
 
						t->setFontSize(1,8,11);
						t->setText(1,8,"E-Mail: smith.jacob@gmail.com");
 
						t->setFontSize(1,10,11);
						t->setText(1,10,"Item, discription");
						t->setBorders(1,10,1,1,1,1,0,0,0);
						t->setBgColor(1,10,253,251,214);
						t->setHoriz(1,10,2);
 
						t->setFontSize(2,10,11);
						t->setText(2,10,"QTY");
						t->setBorders(2,10,1,1,1,1,0,0,0);
						t->setBgColor(2,10,253,251,214);
						t->setHoriz(2,10,2);
						t->setFontSize(3,10,11);
						t->setText(3,10,"Unit price");
						t->setBorders(3,10,1,1,1,1,0,0,0);
						t->setBgColor(3,10,253,251,214);
						t->setHoriz(3,10,2);
 
						t->setFontSize(4,10,11);
						t->setText(4,10,"Line Price");
						t->setBorders(4,10,1,1,1,1,0,0,0);
						t->setBgColor(4,10,253,251,214);
						t->setHoriz(4,10,2);
 
						t->setFontSize(1,11,11);
						t->setText(1,11,"Electric kettle");
						t->setBorders(1,11,1,1,1,0,0,0,0);
 
						t->setFontSize(1,12,11);
						t->setText(1,12,"Plate");
						t->setBorders(1,12,1,0,1,0,0,0,0);
 
						t->setFontSize(1,13,11);
						t->setText(1,13,"Coffee cup");
						t->setBorders(1,13,1,0,1,1,0,0,0);
 
						t->setFontSize(2,11,11);
						t->setText(2,11,"1");
						t->setBorders(2,11,1,1,1,0,0,0,0);
 
						t->setFontSize(2,12,11);
						t->setText(2,12,"4");
						t->setBorders(2,12,1,0,1,0,0,0,0);
 
						t->setFontSize(2,13,11);
						t->setText(2,13,"6");
						t->setBorders(2,13,1,0,1,1,0,0,0);
 
						t->setFontSize(3,11,11);
						t->setHoriz(3,11,3);
						t->setText(3,11,"57.43");
						t->setBorders(3,11,1,1,1,0,0,0,0);
 
						t->setFontSize(3,12,11);
						t->setHoriz(3,12,3);
						t->setText(3,12,"12");
						t->setBorders(3,12,1,0,1,0,0,0,0);
 
						t->setFontSize(3,13,11);
						t->setHoriz(3,13,3);
						t->setText(3,13,"5.12");
						t->setBorders(3,13,1,0,1,1,0,0,0);
 
						t->setFontSize(4,11,11);
						t->setHoriz(4,11,3);
						t->setText(4,11,"=C12*D12");
						t->setBorders(4,11,1,1,1,0,0,0,0);
 
						t->setFontSize(4,12,11);
						t->setHoriz(4,12,3);
						t->setText(4,12,"=C13*D13");
						t->setBorders(4,12,1,0,1,0,0,0,0);
 
						t->setFontSize(4,13,11);
						t->setHoriz(4,13,3);
						t->setText(4,13,"=C14*D14");
						t->setBorders(4,13,1,0,1,1,0,0,0);
 
						t->setBgColor(3,15,253,251,214);
						t->setFontSize(3,15,11);
						t->setHoriz(3,15,3);
						t->setText(3,15,"Sub total");
						t->setBorders(3,15,1,1,1,1,0,0,0);
 
						t->setBgColor(3,16,253,251,214);
						t->setFontSize(3,16,11);
						t->setHoriz(3,16,3);
						t->setText(3,16,"Taxes");
						t->setBorders(3,16,1,1,1,1,0,0,0);
 
						t->setBgColor(3,17,253,251,214);
						t->setFontSize(3,17,11);
						t->setHoriz(3,17,3);
						t->setText(3,17,"Total");
						t->setBorders(3,17,1,1,1,1,0,0,0);
 
						t->setFontSize(4,15,11);
						t->setHoriz(4,15,3);
						t->setText(4,15,"=SUM(E12:E14)");
						t->setBorders(4,15,1,1,1,1,0,0,0);
 
						t->setFontSize(4,16,11);
						t->setHoriz(4,16,3);
						t->setText(4,16,"=E16*0.2");
						t->setBorders(4,16,1,1,1,1,0,0,0);
 
						t->setFontSize(4,17,11);
						t->setHoriz(4,17,3);
						t->setText(4,17,"=SUM(E16:E17)");
						t->setBorders(4,17,1,1,1,1,0,0,0);
						t->setBold(4,17);
 
						t->mergeRange("B21", "E21");
						t->setHoriz(1,20,2);
						t->setFontSize(1,20,11);
						t->setText(1,20,"Thank you for your business!");
 
						imgPosition iPos;
						iPos.x = 500;
						iPos.y = 500;
 
 
						imgSize iSize;
						iSize.h = 1520;
						iSize.w = 5400;
						t->insertImage(iPos,iSize,"file:///D:/4k-soft.png");
					}
 
					t->export2XLS("file:///C:/Invoice.xls");
				}
			}
 

Calc. Extract and edit data from existing spreedsheet example

		Download result
		
			OOAPI3 *t = new OOAPI3();
			if(t){
				if(t->isInstall()){
					if(t->connect2Calc("file:///D:/TEST.xls", false)){
						t->setSheet(0);
						t->setColWidth(0, 50);
 
						char * text = t->getText(0,0);
						char * newtext = " LibOpenOffice!";
						strcat(text, newtext);
						t->setText(0,0, text);
 
						delete text;
						delete newtext;
 
						/////////////////////////////FONTS
						t->setText(0,3,"1.1223");
						t->setFontSize(0,3,14);
						t->setFont4Cell(0,3,"MS Comic Sans");
						t->setCellStyle(0,3,S_PERCENT);
						t->setStrikeout(0,3,true);
 
						t->setText(0,5,"12:53");
						t->setFontSize(0,5,18);
						t->setFont4Cell(0,5,"Calibri");
						t->setCellStyle(0,5,S_TIME_PA);
						t->setBold(0,5);
						t->setUnderline(0,5,true);
 
						t->setText(0,7,"1234235.23");
						t->setFontSize(0,7,8);
						t->setFont4Cell(0,7,"Arial Black");
						t->setCellStyle(0,7,S_SCTFC_F);
						t->setItalic(0,7);
 
						//////////////////////////////////FORMULA
						t->setText(0,9,"=A4*0.02");
						t->setText(0,11,"=SUM(A4;A8)");
						t->setText(0,13,"=AVERAGE(A8;A4)");
						//////////////////////////////////
 
						t->mergeRange("A16","A18");
						t->mergeRange("A20","A22");
						t->mergeRange("A24","A26");
 
						///////////////////////////////////MERGED
						t->setText(0,15,"Merged range(A16:A18)");
						t->setBorders(0,15,1,1,0,0,255,255,255);
						t->setHoriz(0,15,1);
						t->setVerticalAlignment(0,15,3);
 
						t->setText(0,19,"Merged range(A20:A22)");
						t->setBorders(0,19,0,0,1,1,255,255,255);
						t->setHoriz(0,19,2);
						t->setVerticalAlignment(0,19,2);
 
						t->setText(0,23,"Merged range(A24:A26)");
						t->setBorders(0,23,1,1,1,1,255,255,255);
						t->setHoriz(0,23,3);
						t->setVerticalAlignment(0,23,1);
 
 
						/////////////////////////////////////SAVE TO DISK
						t->export2XLS("file:///C:/styles_example.xls");
					}
				}
			}
 

 

Licence policy

LibOpenOffice is available under three types of licence:

 Demo
 (for demonstration purposes only)
 Free License agreement (english)
License agreement (russian)
 Personal
 (1 license per 1 computer)
 19$ License agreement (english)
License agreement (russian)
 Unlimited
 (for unlimited number of computers)
 199$ License agreement (english)
License agreement (russian)

 

 

 

 

 

 

Comments:

пт, 09/27/2013 - 16:39
Hi, This is seems really good tool and hope it would simplify lot of work for those who want to automate Open office. I have a question whether this can be used to automate OO in MAC..? If not, Do you have any future plan to support Mac OS X? Please let me know. Thanks / Anandh
Аватар пользователя Admin
сб, 09/28/2013 - 12:57
Hi, Anandh! Yes, in future our company is planning to make multi-platform LibOpenOffice with Windows\Linux\MAC support. At this moment LibOpenOffice works only on Windows xp\vista\7\8. Regards.
чт, 10/17/2013 - 19:13
Libre Office, open Office are FREE programs, why you make charge for your program that should be free also? Another RIP OFF scriptkiddy outfit I pressume. There are lots of other programs that can do this for free, google is more than you friend!
Аватар пользователя Admin
чт, 10/17/2013 - 20:29
Dear, Amed! You can google and find lots of examples when software core is free, but additional third-parties plugins, components etc. are not free. Our company done really hard work when developing LibOpenOffice library without full documentation. And we take money because we provide support, fix bugs and add functionality. Otherwise we should make LibOpenOffice opensource, so everyone could constantly contribute to it. But this will probably kill LibOpenOffice project. Regards.
пн, 01/06/2014 - 21:46
Does this work for Libre Office, too?
Аватар пользователя Admin
ср, 01/08/2014 - 12:28
No, OpenOffice only.
ср, 02/26/2014 - 04:48
i excuted LibOpenOffice demo but if( t->isInstall() ) is return so i can't build OpenOffice calc . please reply to me method to resolve. my computer is installed OpenOffice 4.0.1 and sdk
Аватар пользователя Admin
пн, 03/03/2014 - 11:47
Please, specify your contact e-mail or send an email to office@4k.com.ua with subject "LibOpenOffice question"
ср, 03/19/2014 - 09:27
I want to know how I can by it,thanks
Аватар пользователя Admin
чт, 03/20/2014 - 10:23
You can pay for it by PayPal by pressing "Buy" button on this page.

Add new comment

X
<
>