Exemplo n.º 1
0
std::string PDFPageObject::ObjectEntry()
{
	str =  "<<\r";
	if ( commentsOn )
	{
		str += "% Phys Page Num: ";
		str += intToStr( physicalPageNumber );
		str += "\r";
	}
	str += "/Type /Page\r";
	str += "/Parent ";
	str += GetParentObjectStr();
	str += " 0 R\r";
	str += "/Resources ";
	str += GetResourceObjectStr();
	str += " 0 R\r";
	str += "/Contents ";
	str += GetContentObjectStr();
	str += " 0 R\r";
	if (annotsList.size() )
	{
		str += "/Annots ";
		str += GetAnnotsStr(); 
	}
	str += ">>\r";
	AddContents( str );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 2
0
std::string PDFCatelogObject::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Type /Catalog\r";

	if ( pagesObjectNum != -1 )
	{
		buffer += "/Pages ";
		buffer += PagesObjectStr();
		buffer += " 0 R\r";
	}

	if ( outlinesObjectNum != -1 )
	{
		buffer += "/Outlines ";
		buffer += OutlinesObjectStr();
		buffer += " 0 R\r";
		buffer += "/PageMode /UseOutlines\r";
	}
//	buffer += "/ViewerPreferences /FitWindow\r";
	buffer += "/ViewerPreferences /CenterWindow\r";
	
	//buffer += "/Names ";
	//buffer += NamesObjectStr();
	//buffer += " 0 R\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 3
0
std::string PDFColorSpaceObject::ObjectEntry()
{
	buffer += "[/Indexed /DeviceRGB 255 ";
	buffer += intToStr( PDFASCII85DecodeObjectNum );
	buffer += " 0 R]\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 4
0
std::string PDFResourcesObject::ObjectEntry()
{
	buffer =  "<<\r";
	if ( !imageLinkDataList.size() )
		buffer += "/ProcSet [/PDF /Text ]\r";
	else
		buffer += "/ProcSet [/PDF /Text /ImageC /ImageI]\r";
	buffer += "/Font <<";

	for( PDFStrIntList::iterator iter = thePDFFontList.begin(); iter != thePDFFontList.end(); iter++ )
	{
		buffer += " ";
		buffer += "/";
		buffer += (*iter).theString;
		buffer += " ";
		buffer += intToStr( (*iter).theInt );
		buffer += " 0 R";
	}
	//buffer += "\r";
	/*buffer += GetFontName();
	buffer += " ";
	buffer += GetFontObjIdStr();
	buffer += " 0 R\r";*/
	buffer += " >>\r";
	if ( imageLinkDataList.size() )
	{
		buffer += "/XObject <<\r";
		for ( int i = 0; i < imageLinkDataList.size(); i++ )
		{
			buffer += "/";
			buffer += imageLinkDataList[i].imageName;
			buffer += " ";
			buffer += intToStr( imageLinkDataList[i].imageNum );
			buffer += " 0 R\r";
		}
		buffer += ">>\r";
	}

	buffer += "/ExtGState <<\r";
	buffer += "/GS1 ";
	buffer += GetExtGStateStr();
	buffer += " 0 R\r";
	buffer += ">>\r";
	if ( imageLinkDataList.size() )
	{
		for ( int i = 0; i < imageLinkDataList.size(); i++ )
		{
			buffer += "/ColorSpace <<\r";
			buffer += "/CS1 ";
			buffer += intToStr( imageLinkDataList[i].colorSpaceNum );
			buffer += " 0 R\r";
			buffer += ">>\r";
		}
	}
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 5
0
std::string PDFEncodingObject::ObjectEntry()
{
	buffer += "<<\r";
	buffer += "/Type /Encoding\r";
//	buffer += "/BaseEncoding /MacRomanEncoding\r";
//	buffer += "/BaseEncoding /PDFDocEncoding\r";
	buffer += "/BaseEncoding /WinAnsiEncoding\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 6
0
std::string PDFURIObject::ObjectEntry()
{
	str =  "<<\r";
	str += "/Type /Action\r"; 
	str += "/S /URI\r"; 
	str += "/URI (";
	str += URL();
	str += ")\r>>\r";
	AddContents( str );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 7
0
std::string PDFExtGState::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Type /ExtGState\r";
	buffer += "/SA false\r";
	buffer += "/OP false\r";
	buffer += "/HT /Default\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 8
0
std::string PDFLinkToPageObject::ObjectEntry()
{
	buffer =  "<<\r";
//	buffer += "/Type /Action\r";
	buffer += "/S /GoTo\r";
	buffer += "/D [ ";
	buffer += PageStr();
	buffer += " 0 R /Fit ]\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 9
0
std::string PDFImageObject::ObjectEntry()
{
//	if ( !ImageLen() )
//		buffer = ObjectHeader();
	buffer +=  "<<\r";
	buffer += "/Type /XObject\r";
	buffer += "/Subtype /Image\r";
	buffer += "/Name /";
	buffer += GetImageName();
	buffer += "\r";
	buffer += "/Width ";
	buffer += GetWidth();
	buffer += "\r";
	buffer += "/Height ";
	buffer += GetHeight();
	buffer += "\r";
	buffer += "/BitsPerComponent ";
	buffer += GetBitsPerComponent();
	buffer += "\r";

	buffer += "/ColorSpace ";
//	buffer += GetColorSpace();
//	buffer += "\r";
	buffer += GetColorSpaceObjIdStr();

	if ( !GetFilter().empty() ) 
	{
		buffer += "/Filter ";
		buffer += GetFilter();
		buffer += "\r";
	}

	buffer += "/Length ";
	if ( !ImageLen() )
		buffer += intToStr( imageData.length() );
	else
		buffer += intToStr( imageLen );
	buffer += "\r";

	buffer += ">>\r";
	buffer += "stream\r";
	if ( !ImageLen() )
	{
		buffer += imageData;
		buffer += "\r% Trev2\rendstream\r";
	}
	AddContents( buffer );
	if ( !ImageLen() )
		return PDFBodyObject::ObjectEntry();
	else
		return GetContents();
}
Exemplo n.º 10
0
std::string PDFHalftone::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Type /Halftone\r";
	buffer += "/HalftoneType 1\r";
	buffer += "/HalftoneName (Default)\r";
	buffer += "/Frequency 60\r";
	buffer += "/Angle 45\r";
	buffer += "/SpotFunction /Round\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 11
0
std::string PDFPagesListObject::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Type /Pages\r";
	buffer += KidPagesStr();
	buffer += "/Count ";
	buffer += intToStr( PageCount() );
	buffer += "\r";
	buffer += SizeStr();
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 12
0
std::string PDFASCII85DecodeObject::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Filter /ASCII85Decode\r";
	buffer += "/Length ";
	buffer += intToStr( decodeData.length() );
	buffer += "\r>>\r";
	buffer += "stream\r";
	buffer += decodeData;
	buffer += "\r% Trev1\rendstream\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 13
0
std::string PDFAnnotInternalLinkObject::ObjectEntry()
{
	str =  "<<\r";
	str +=  "/Type /Annot\r"; 
	str +=  "/Subtype /Link\r"; 
	str +=  "/Dest ";
	str +=  dest;
	str +=  "/Rect ";
	str +=  GetLinkRectStr();
	str +=  "\r";
	str +=  "/Border [ 0 0 0 ]\r"; 
	str += ">>\r";
	AddContents( str );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 14
0
std::string PDFOutlinesObject::ObjectEntry()
{
	buffer =  "<<\r";
	buffer += "/Count ";
	buffer += CountStr();
	buffer += "\r/First ";
	buffer += FirstObjectStr();
	buffer += " 0 R\r";
	buffer += "/Last ";
	buffer += LastObjectStr();
	buffer += " 0 R\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 15
0
/*|><|************************************************************************
*
* Method Name:  CMessage - Constructor
*
*
* Inputs:       None
*
* Outputs:      None
*
* Returns:      None
*
* Logic Notes:
*
* Caveats:
*
************************************************************************|<>|*/
CMessage::CMessage(unsigned long dwMsgType, void *pvArgument1,
                   void *pvArgument2, void *pvArgument3,
                   void *pvArgument4, void *pvArgument5)
         :
#ifdef __pingtel_on_posix__
         OsMsg('R', 'C'), /* Arbitrary values: R for RTCP and C for CMessage */
#endif
         m_dwMsgType(UNASSIGNED),   // Default Initializers
         m_wArgIndex(0)
{

//  Store the contents of the message
    AddContents(dwMsgType, pvArgument1, pvArgument2, pvArgument3,
                  pvArgument4, pvArgument5);

}
Exemplo n.º 16
0
std::string PDFAnnotURILinkObject::ObjectEntry()
{
	str =  "<<\r";
	str +=  "/Type /Annot\r"; 
	str +=  "/Subtype /Link\r"; 
	str +=  "/Rect ";
	str +=  URIObj->GetLinkRectStr();
	str +=  "\r/A ";
	str +=  URIObj->GetIdStr();
	str += " 0 R\r"; 
	str +=  "/Border [ 0 0 0 ]\r";			// If we want to set the border then use "[ 0 0 1 ]"
//	str +=  "/C [1.0000 0.0000 0.0000]\r";	// Make the border red!
	str +=  "/F 0\r";

	str += ">>\r";
	AddContents( str );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 17
0
std::string PDFFontObject::ObjectEntry()
{
	buffer += "<<\r";
	buffer += "/Type /Font\r";
	buffer += "/Subtype /Type1\r";
	buffer += "/Name /"; 
	buffer += FontName();
	buffer += "\r/Encoding ";
	buffer += EncodingObjectStr();
	buffer += " 0 R\r";
//		buffer += "/BaseFont /MS Gothic\r";
	buffer += "/BaseFont /";
	buffer += actFontName;// "Times";
//		buffer += "/BaseFont /Courier\r";
//		buffer += "/BaseFont /Geneva\r";
	
	if (actFontName == "Times")
	{
		if ( state & PDF_BOLD && state & PDF_ITALIC )
			buffer += "-BoldItalic";
		else if ( state & PDF_BOLD )
			buffer += "-Bold";
		else if ( state & PDF_ITALIC )
			buffer += "-Italic";
		else
			buffer += "-Roman";
	}
	else if (actFontName == "Helvetica")
	{
		if ( state & PDF_BOLD && state & PDF_ITALIC )
			buffer += "-BoldOblique";
		else if ( state & PDF_BOLD )
			buffer += "-Bold";
		else if ( state & PDF_ITALIC )
			buffer += "-Oblique";
	}
	
	buffer += "\r";

//		buffer += "/Leading 4\r";
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 18
0
std::string PDFInfoObject::ObjectEntry()
{
	unsigned long origLen = 128;
	unsigned long len = origLen;
	unsigned long retLen;

	char buf[128+1];

	buffer += "<<\r";
	buffer += "/CreationDate (";
	retLen = GetCurrDateTime( buf, &len );
	len = origLen;
	buffer += buf;
	buffer += ")\r";

	buffer += "/Author (";
	GetUserName( buf, &len );
	len = origLen;
	buffer += buf;
	buffer += ")\r";

	buffer += "/Creator (";
	retLen = GetAppBuildDetails( buf );
	len = origLen;
	buffer += buf;
	buffer += ")\r";
	
	buffer += "/Producer (OS - ";
	GetOSVersion( buf, &len );
	len = origLen;
	buffer += buf;
	buffer += ")\r";

	buffer += "/Title (";
	buffer += title;
	buffer += ")\r";

	buffer += "/Subject (Web Server log file analysis.)\r";

	buffer += ">>\r";

	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}
Exemplo n.º 19
0
std::string PDFFontDesc::ObjectEntry()
{
	buffer += "<<\r";
	buffer += "/Type /FontDescriptor\r";
	buffer += "/Ascent 859\r";
	buffer += "/CapHeight 0\r";
	buffer += "/Descent -136\r";
	buffer += "/Flags 5\r";
	buffer += "/FontBBox [ 0 -137 996 859 ]\r";
	buffer += "/FontName /";
	buffer += fontName;
	buffer += "\r";
	buffer += "/ItalicAngle 0\r";
	buffer += "/StemV 0\r";
	buffer += "/FontFile2 ";
	buffer += intToStr( fontFileObjNum );
	buffer += "0 R\r"; 
	buffer += ">>\r";
	AddContents( buffer );
	return PDFBodyObject::ObjectEntry();
}