103 lines
3.2 KiB
PHP
103 lines
3.2 KiB
PHP
<?php
|
|
|
|
// text
|
|
// ================================================================================================
|
|
function txtGetStyle($pcb, $txt)
|
|
{
|
|
for ($i=0; $i < sizeof($pcb->TXT_STYLE); $i++)
|
|
{
|
|
$style = $pcb->TXT_STYLE[$i];
|
|
if ( ($style['size_v'] == $txt['size_v']) )
|
|
return $style['name'];
|
|
}
|
|
|
|
return false;
|
|
}
|
|
function txtAddStyle($pcb, $txt)
|
|
{
|
|
for ($i=0; $i < sizeof($pcb->TXT_STYLE); $i++)
|
|
{
|
|
$style = $pcb->TXT_STYLE[$i];
|
|
if ( ($style['size_v'] == $txt['size_v']) )
|
|
return false;
|
|
}
|
|
|
|
$pcb->TXT_STYLE[$i]['size_v'] = $txt['size_v'];
|
|
$pcb->TXT_STYLE[$i]['name'] = "txt".$i;
|
|
|
|
return $pcb->TXT_STYLE[$i]['name'];
|
|
}
|
|
|
|
echo"<br>";
|
|
echo"generate text styles...<br>";
|
|
for($i=1; $i<=$pcb->HDR['texts_count']['v']; $i++)
|
|
{
|
|
$T = $pcb->TXT[$i];
|
|
|
|
$txt['size_v'] = round(1.5*$T['size_v']['v']);
|
|
|
|
if ($txt_style = txtAddStyle($pcb, $txt))
|
|
{
|
|
echo"text [$i], added new text {";
|
|
echo"size_v=".$txt['size_v']."";
|
|
echo"}, style=[$txt_style]<br>";
|
|
}
|
|
|
|
// save style to text
|
|
$pcb->TXT[$i]['style']['v'] = txtGetStyle($pcb, $txt);
|
|
}
|
|
echo"save text styles: ".sizeof($pcb->TXT_STYLE)."<br>";
|
|
|
|
$pcad_font_stroke = " (font\r\n";
|
|
$pcad_font_stroke .= " (fontType Stroke)\r\n";
|
|
$pcad_font_stroke .= " (fontFamily SanSerif)\r\n";
|
|
$pcad_font_stroke .= " (fontFace \"Quality\")\r\n";
|
|
$pcad_font_stroke .= " (fontHeight 100)\r\n";
|
|
$pcad_font_stroke .= " (strokeWidth 8)\r\n";
|
|
$pcad_font_stroke .= " )\r\n";
|
|
|
|
$pcad_font_truetype = " (font\r\n";
|
|
$pcad_font_truetype .= " (fontType TrueType)\r\n";
|
|
$pcad_font_truetype .= " (fontFamily Modern)\r\n";
|
|
$pcad_font_truetype .= " (fontFace \"Arial\")\r\n";
|
|
$pcad_font_truetype .= " (fontHeight 100)\r\n";
|
|
$pcad_font_truetype .= " (strokeWidth 10)\r\n";
|
|
$pcad_font_truetype .= " (fontWeight 400)\r\n";
|
|
$pcad_font_truetype .= " (fontCharSet 0)\r\n";
|
|
$pcad_font_truetype .= " (fontOutPrecision 7)\r\n";
|
|
$pcad_font_truetype .= " (fontClipPrecision 32)\r\n";
|
|
$pcad_font_truetype .= " (fontQuality 1)\r\n";
|
|
$pcad_font_truetype .= " (fontPitchAndFamily 6)\r\n";
|
|
$pcad_font_truetype .= " )\r\n";
|
|
|
|
|
|
$pcad_lib = " (textStyleDef \"(Default)\"\r\n";
|
|
$pcad_lib .= $pcad_font_stroke;
|
|
$pcad_lib .= " )\r\n";
|
|
|
|
$pcad_lib .= " (textStyleDef \"(DefaultTTF)\"\r\n";
|
|
$pcad_lib .= $pcad_font_stroke;
|
|
$pcad_lib .= $pcad_font_truetype;
|
|
$pcad_lib .= " (textStyleAllowTType True)\r\n";
|
|
$pcad_lib .= " (textStyleDisplayTType True)\r\n";
|
|
$pcad_lib .= " )\r\n";
|
|
file_put_contents($out_file, $pcad_lib, FILE_APPEND | LOCK_EX);
|
|
|
|
$pcad_lib = "";
|
|
for ($i=0; $i<sizeof($pcb->TXT_STYLE); $i++)
|
|
{
|
|
$pcad_lib .= " (textStyleDef \"".$pcb->TXT_STYLE[$i]['name']."\"\r\n";
|
|
$pcad_lib .= " (font\r\n";
|
|
$pcad_lib .= " (fontType Stroke)\r\n";
|
|
$pcad_lib .= " (fontFamily SanSerif)\r\n";
|
|
$pcad_lib .= " (fontFace \"Quality\")\r\n";
|
|
$pcad_lib .= " (fontHeight ".$pcb->TXT_STYLE[$i]['size_v'].")\r\n";
|
|
$pcad_lib .= " (strokeWidth 8)\r\n";
|
|
$pcad_lib .= " )\r\n";
|
|
$pcad_lib .= " (textStyleAllowTType False)\r\n";
|
|
$pcad_lib .= " (textStyleDisplayTType False)\r\n";
|
|
$pcad_lib .= " )\r\n";
|
|
|
|
}
|
|
file_put_contents($out_file, $pcad_lib, FILE_APPEND | LOCK_EX);
|