Beispiel #1
0
 /// <summary>
 /// Renders the image to PDF
 /// </summary>
 /// <param name="pdf">Cb.</param>
 /// <param name="pageSize">Page size.</param>
 internal override void RenderPDF(SimplePdf pdf, PageSize pageSize)
 {
     pdf.DrawImage(m_image, x * pageSize.GetDPI,
                   (pageSize.GetHeightInCM - y - m_h) * pageSize.GetDPI,
                   m_w * pageSize.GetDPI,
                   m_h * pageSize.GetDPI);
 }
Beispiel #2
0
        /// <summary>
        /// Render a box in PDF format
        /// </summary>
        /// <param name="pdf">pdf<param>
        /// <param name="pageSize">Page size.</param>
        internal override void RenderPDF(SimplePdf pdf, PageSize pageSize)
        {
            float fx      = x * pageSize.GetDPI;
            float fy      = (pageSize.GetHeightInCM - y) * pageSize.GetDPI;
            float fwidth  = m_w * pageSize.GetDPI;
            float fheight = -m_h * pageSize.GetDPI;

            pdf.SetColor(m_color.R / 255f, m_color.G / 255f, m_color.B / 255f);

            if (m_IsFull)
            {
                pdf.DrawRectangleFull((int)fx, (int)fy, (int)fwidth, (int)fheight);
            }
            else
            {
                pdf.DrawRectangle((int)fx, (int)fy, (int)fwidth, (int)fheight);
            }
        }
Beispiel #3
0
        /// <summary>
        /// Render the label to a PDF
        /// </summary>
        /// <param name="pdf">pdf</param>
        /// <param name="pageSize">Page size.</param>
        internal override void RenderPDF(SimplePdf pdf, PageSize pageSize)
        {
            float xPos = x * pageSize.GetDPI;
            float yPos = (pageSize.GetHeightInCM - y - m_font.GetHeight()) * pageSize.GetDPI;

            pdf.SetFont(m_font.GetPDFFont(), (int)(m_font.Size * pageSize.GetDPI));
            pdf.SetColor(m_font.GetPDFColor.R_Normalized, m_font.GetPDFColor.G_Normalized, m_font.GetPDFColor.B_Normalized);

            if (Math.Abs(m_font.Angle) > 0.0001)                        // se compara con un epsilon por ser un float
            {
                float sinus      = (float)Math.Sin(m_font.Angle * degreesToRadiant);
                float cosinus    = (float)Math.Cos(m_font.Angle * degreesToRadiant);
                float fontHeight = (-m_font.GetDescentPoint() - m_font.GetHeight()) * pageSize.GetDPI;
                xPos = xPos - sinus * fontHeight;
                yPos = yPos + cosinus * fontHeight - fontHeight;
            }

            pdf.TextAngle(m_font.Angle);

            pdf.DrawText(m_text, (int)xPos, (int)yPos);
        }
Beispiel #4
0
 /// <summary>
 /// Draw this element to a PDF
 /// </summary>
 /// <param name="cb">PDF writer</param>
 internal abstract void RenderPDF(SimplePdf pdf, PageSize pageSize);