<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=48&amp;t=6772&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-04-16T09:47:36+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=48&amp;t=6772&amp;mode</id>
<entry>
<author><name><![CDATA[xamrex]]></name></author>
<updated>2014-04-16T09:47:36+01:00</updated>
<published>2014-04-16T09:47:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78241#p78241</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78241#p78241"/>
<title type="html"><![CDATA[Re: Drukowanie C#]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78241#p78241"><![CDATA[
Ok, czyli krop po kroku.<br />Mamy stronę a4, która ma 210mm szerokości.<br />Teraz tak mamy sobie dwa stringi:<br />string 1 = Nazwa (tutaj ilośc znaków jest stała i wynosi 5)<br />string 2 = Jablko (tutaj ilość znaków jest zmienna, ale w tym przypadku wynosi 6)<br /><br />ilość znaków, które jest w stringu2, mogę obliczyć za pomocą <br />[syntax=c]e.Graphics.MeasureString(measureString, stringFont, layoutSize, newStringFormat, out charactersFitted, out linesFilled);[/syntax]<br /><br />Więc teraz znamy ile znaków jest w linii.<br />Należałoby (chyba) teraz sprawdzić ile pixeli; bądź lepiej mm (w szerokości) zajmują te string1+string2<br />Od szerokości strony 210mm odjąć tą szerokość jaką zajmują te dwa stringi i potem w jakiś sposób obliczyć ile tych kropek zmieści się w linii..<br /><br />Ale jak teraz to 'okodzić' ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=74">xamrex</a> — 16 kwi 2014, o 09:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[karolek]]></name></author>
<updated>2014-04-16T09:31:11+01:00</updated>
<published>2014-04-16T09:31:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78233#p78233</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78233#p78233"/>
<title type="html"><![CDATA[Re: Drukowanie C#]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78233#p78233"><![CDATA[
<div class="quotetitle">perlon napisał(a):</div><div class="quotecontent"><br />Hi !<br />  Nie wiem jak sprawdzić ile miejsca zajmuje napis rysowany konkretną czcionką ale można to szacować na podstawie ilości znaków +/- a kropkami wypełniać z pewnym marginesem błędu oszacowania label'a i textbox'a.<br /></div><br /><br />słuzą do tego funckje Font Metrics  MSDN wyjasnia jak to obliczyć   <a href="http://msdn.microsoft.com/en-us/library/xwf9s90b%28v=vs.110%29.aspx"  class="postlink">MSDN LINK</a><br />[syntax=csharp]descentPixel = font.Size * descent / fontFamily.GetEmHeight(FontStyle.Regular);[/syntax]<br /><br />[syntax=csharp]escentPixel = font.Size * descent / fontFamily.GetEmHeight(FontStyle.Regular);[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2535">karolek</a> — 16 kwi 2014, o 09:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[perlon]]></name></author>
<updated>2014-04-15T20:58:49+01:00</updated>
<published>2014-04-15T20:58:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78198#p78198</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78198#p78198"/>
<title type="html"><![CDATA[Re: Drukowanie C#]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78198#p78198"><![CDATA[
Hi !<br />Ne moje ale znalezione gdzieś w googlach. Może się przyda.<br />[syntax=csharp]void Main()<br />{<br />    PrintDocument document = new PrintDocument();<br />    document.PrintPage += new PrintPageEventHandler(pd_PrintPage);<br />    document.Print();<br />}<br />void pd_PrintPage(object sender, PrintPageEventArgs ev)<br />{<br />    var str = &quot;Lorem ipsum dolor sit amet, consectetur adipisicing elit, \r\nsed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\r\n &quot; +<br />              &quot;Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.\r\n Duis aute irure &quot; +<br />              &quot;dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.\r\n Excepteur sint occaecat cupidatat non&quot; +<br />              &quot;proident, sunt in culpa qui officia deserunt mollit anim id est laboru&quot;;<br />    var lines = str.Split(new string&#91;&#93; {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries);<br />    var x = 20;<br />    var y = 0;<br />    foreach (var line in lines)<br />    {<br />        ev.Graphics.DrawString(line.Trim(), new System.Drawing.Font(&quot;Arial&quot;,10f, System.Drawing.FontStyle.Regular), Brushes.Black, x,y+=30);        <br />    }<br />}[/syntax]<br /><br />Linię w pętli foreach zastąpiłbym trzema odpowiedzialnymi odpowiednio za label, kropki i wartość textbox'a odpowiednio sobie licząc współrzędne i ilość wymaganych kropek. Nie wiem jak sprawdzić ile miejsca zajmuje napis rysowany konkretną czcionką ale można to szacować na podstawie ilości znaków +/- a kropkami wypełniać z pewnym marginesem błędu oszacowania label'a i textbox'a.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=382">perlon</a> — 15 kwi 2014, o 20:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[karolek]]></name></author>
<updated>2014-04-15T19:45:22+01:00</updated>
<published>2014-04-15T19:45:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78188#p78188</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78188#p78188"/>
<title type="html"><![CDATA[Re: Drukowanie C#]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78188#p78188"><![CDATA[
nie wiem czy jest inny sposób ,ale musiałbys obsłużyć &quot;canvas&quot; chyba tez tak to sie nazywa w c# i po prostu rysowac po tym płutnie czyli 2d w c#<br />wtedy mozesz nawet obrazki sobie wstawic do niego , wtedy gdy juz bedziesz miał gotową bitmape robisz po prostu print i juz <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><br />[syntax=csharp]Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);<br />using (Graphics g = Graphics.FromImage(bmp))<br />{<br />    g.DrawLine(new Pen(Color.Red), 0, 0, 10, 10);<br />}<br />pictureBox1.Image = bmp;[/syntax]<br /><br />podsumowująć zajrzy tu <a href="http://msdn.microsoft.com/pl-pl/library/system.drawing.graphics(v=vs.110).aspx"  class="postlink">System Drawing Graphics</a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2535">karolek</a> — 15 kwi 2014, o 19:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xamrex]]></name></author>
<updated>2014-04-15T16:20:25+01:00</updated>
<published>2014-04-15T16:20:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78147#p78147</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78147#p78147"/>
<title type="html"><![CDATA[Drukowanie C#]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6772&amp;p=78147#p78147"><![CDATA[
Witam,<br />Tworzę sobie apkę i chciałbym móc wydrukować kilka rzeczy.<br />Generalnie przykład wygląda tak:<br /><a href="http://forum.atnel.pl/_obrazki/o/74/61a2e40162bf0510161b414509784436.PNG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/74/61a2e40162bf0510161b414509784436.PNG" alt="Obrazek" /></a><br />3 labely a obok nich 3 textboxy<br /><br />I teraz chciałbym móc wydrukować aby wyglądało to mniej więcej tak:<br /><a href="http://forum.atnel.pl/_obrazki/o/74/ecf5925b3db047634a830d970ebad198.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/74/ecf5925b3db047634a830d970ebad198.png" alt="Obrazek" /></a><br /><br />Chodzi mi o to aby były takie fajne kropki.<br /><br />Jak to w ogóle ugryźć?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=74">xamrex</a> — 15 kwi 2014, o 16:20</p><hr />
]]></content>
</entry>
</feed>