📄 style.c
字号:
/****************************************************************/
/* COPYRIGHT NOTICE */
/* ---------------- */
/* All software in this listing remain the strict copyright */
/* of Ilija Kovacevic and cannot be copied or used in any way */
/* except by written permission of Ilija Kovacevic. */
/* */
/* Copyright (c) 1992 Ilija Kovacevic */
/* www.kov.com email ilija@kov.com */
/****************************************************************/
#include "dwgin.h"
PUBLIC AcadFontStyle *AcadFontStyle__create( void )
{
return( ( AcadFontStyle * )get_memory( sizeof( AcadFontStyle ) ) );
}
PUBLIC void AcadFontStyle__delete( AcadFontStyle *me )
{
free( ( char * )me );
}
PUBLIC void AcadFontStyle__read( AcadFontStyle *me )
{
INT16 unknown;
if ( debugger ) dprintf( "\nSTYLE ----------------------------------------------------\n" );
get_UINT8( &me->flags );
get_array( &me->name,sizeof( me->name ) );
if ( __drawing->acad11 ) get_INT16( &unknown );
get_DOUBLE( &me->height );
get_DOUBLE( &me->width_factor );
get_DOUBLE( &me->obliquing_angle );
get_UINT8( &me->flags2 );
get_DOUBLE( &me->prompt_height );
get_array( &me->file_name,sizeof( me->file_name ) );
convert_string_to_lower_case( me->file_name );
get_array( &me->bigfont_file_name,sizeof( me->bigfont_file_name ) );
convert_string_to_lower_case( me->bigfont_file_name );
me->vertical = me->flags&0x4;
me->backward = me->flags2&0x2;
me->upside_down = me->flags2&0x4;
if ( me->flags&0x80 ) me->xref = true;
else me->xref = false;
}
PUBLIC void AcadFontStyle__dxfout( AcadFontStyle *me )
{
if ( !me->xref )
{
dxf_string( 0,"STYLE" );
dxf_string( 2,me->name );
dxf_char( 70,me->flags );
dxf_DOUBLE( 40,me->height );
dxf_DOUBLE( 41,me->width_factor );
dxf_DOUBLE( 50,rad_to_degrees( me->obliquing_angle ) );
dxf_char( 71,me->flags2 );
dxf_DOUBLE( 42,me->prompt_height );
dxf_string( 3,me->file_name );
dxf_string( 4,me->bigfont_file_name );
}
}
PUBLIC void AcadFontStyle__dump_to_debug_file( AcadFontStyle *me )
{
dprintf( "STYLE\n" );
dprintf( "\tName = >%s<\n",me->name );
dprintf( "\tflags = %xH\n",me->flags&0xff );
dprintf( "\tHeight = %lf\n",me->height );
dprintf( "\tWidth factor = %lf\n",me->width_factor );
dprintf( "\tObliquing angle = %lf rads %lf degrees\n",me->obliquing_angle,rad_to_degrees( me->obliquing_angle ) );
dprintf( "\tText generation flags = %xH\n",me->flags2 );
dprintf( "\tPrompt height = %lf\n",me->prompt_height );
dprintf( "\tFile name = >%s<\n",me->file_name );
if ( me->backward ) dprintf( "\tbackward\n" );
if ( me->vertical ) dprintf( "\tvertical\n" );
if ( me->upside_down ) dprintf( "\tupside down\n" );
if ( me->xref ) dprintf( "\txref style\n" );
if ( me->bigfont_file_name[ 0 ] ) dprintf( "\tBIGFONT file name = >%s<\n\n",me->bigfont_file_name );
}
PUBLIC void AcadFontStyle__write( AcadFontStyle *me )
{
put_UINT8( me->flags );
put_array( me->name,sizeof( me->name ) );
put_DOUBLE( me->height );
put_DOUBLE( me->width_factor );
put_DOUBLE( me->obliquing_angle );
put_UINT8( me->flags2 );
put_DOUBLE( me->prompt_height );
put_array( me->file_name,sizeof( me->file_name ) );
put_array( me->bigfont_file_name,sizeof( me->bigfont_file_name ) );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -