精华内容
下载资源
问答
  • C#DrawString 怎么设置字间距和行间距

    千次阅读 2020-03-13 09:35:36
    C#DrawString 怎么设置字间距和行间距 C#DrawString 怎么设置字间距和行间距 工具/原料 visual studio 2008/2005/2012等 方法/步骤 1 设置Image对象: System.Drawing.Image img = System.Drawing....

    C#DrawString 怎么设置字间距和行间距

    C#DrawString 怎么设置字间距和行间距

    工具/原料

    • visual studio 2008/2005/2012等

    方法/步骤

    1. 1

      设置Image对象:

      System.Drawing.Image img = System.Drawing.Image.FromFile("c:\\bg.png");

      C#DrawString 怎么设置字间距和行间距

    2. 2

      将img赋值给Graphics:

      Graphics g = Graphics.FromImage(img);

      C#DrawString 怎么设置字间距和行间距

    3. 3

      设置图像Graphics g的属性:

       

       

                  //设置高质量插值法   

                  g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;

                  //设置高质量,低速度呈现平滑程度   

                  g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;

                  g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;

                  //消除锯齿 

                  g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

      C#DrawString 怎么设置字间距和行间距

    4. 4

      设置字体和笔刷:

       

      Font f12 = new Font("微软雅黑", 12, FontStyle.Regular);

      SolidBrush bru = new SolidBrush(Color.White);

      C#DrawString 怎么设置字间距和行间距

    5. 5

      设置PointF和SizeF:

      PointF pf = new Point(10, 10);

      SizeF charSize;

      C#DrawString 怎么设置字间距和行间距

    6. 6

      将需要操作的字符串转为char[]:

       

      string 待写入字符串 = "待写入字符串";                        

      char[] ch = 待写入字符串.ToCharArray();

      C#DrawString 怎么设置字间距和行间距

    7. 7

      这是两个变量:行高和字间距,

      并将转换为char[]的字符逐一写入图片中。

      以下是核心代码:

      foreach (char c in ch)

                  {

                      //获取字符尺寸

                      charSize = g.MeasureString(c.ToString(), f12);

                      //逐一写入字符

                      g.DrawString(c.ToString(), f12, bru, pf);

                      //设置字间距

                      pf.X += (charSize.Width - 字间距);

                      //设置行高

                      if (pf.X > 1000)

                      {

                           pf.X = 10;

                           pf.Y += (charSize.Height + 5);                     

                      }

                  }

      C#DrawString 怎么设置字间距和行间距

    展开全文
  • android:textScaleX是调节字间距的,它的值是一个float型。默认textView 此属性是使用的是: Android.internal.R.styleable.TextView_textScaleX ...设置TextView的行间距和行间距的倍数 android:lineSpacingExtr

    android:textScaleX是调节字间距的,它的值是一个float型。默认textView 此属性是使用的是:

    Android.internal.R.styleable.TextView_textScaleX
    setTextScaleX(a.getFloat(attr, 1.0f));

    设置TextView的行间距和行间距的倍数

    android:lineSpacingExtra  
    android:lineSpacingMultiplier

    设置字间距需要自定义控件

    public class MyTextView extends TextView {
      private String content;
      private int width;
      private Paint paint;
      private int xPadding;
      private int yPadding;
      private int textHeight;
      private int xPaddingMin;
      int count;
      //记录每个字的二维数组
      int[][] position;
    
      public MyTextView(Context context) {
        super(context);
        init();
      }
    
      public MyTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
      }
    
      public MyTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init();
      }
    
      public void setText(String str) {
        width = this.getWidth();
        getPositions(str);
        //重新画控件
        this.invalidate();
      }
      public void init() {
    
        paint = new Paint();
        paint.setColor(Color.parseColor("#888888"));
        paint.setTypeface(Typeface.DEFAULT);
        paint.setTextSize(dip2px(this.getContext(), 14f));
        Paint.FontMetrics fm = paint.getFontMetrics();// 得到系统默认字体属性
        textHeight = (int) (Math.ceil(fm.descent - fm.top) + 2);// 获得字体高度
        //字间距
        xPadding = dip2px(this.getContext(), 4f);
        //行间距
        yPadding = dip2px(this.getContext(), 10f);
        //比较小的字间距(字母和数字应紧凑)
        xPaddingMin = dip2px(this.getContext(), 2f);
    
      }
    
    
      @Override
      protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        if (!TextUtils.isEmpty(content)) {
          for (int i = 0; i < count; i++) {
            canvas.drawText(String.valueOf(content.charAt(i)), position[i][0],position[i][1], paint);
          }
        }
      }
    
    
      public void getPositions(String content) {
        this.content = content;
        char ch;
        //输入点的 x的坐标
        int x = 0;
        //当前行数
        int lineNum = 1;
        count = content.length();
        //初始化字体位置数组
        position=new int[count][2];
        for (int i = 0; i < count; i++) {
          ch =content.charAt(i);
          String str = String.valueOf(ch);
    
          //根据画笔获得每一个字符的显示的rect 就是包围框(获得字符宽度)
          Rect rect = new Rect();
          paint.getTextBounds(str, 0, 1, rect);
          int strwidth = rect.width();
          //对有些标点做些处理
          if (str.equals("《") || str.equals("(")) {
            strwidth += xPaddingMin * 2;
          }
          //当前行的宽度
          float textWith = strwidth;
          //没画字前预判看是否会出界
          x += textWith;
          //出界就换行
          if (x > width) {
            lineNum++;// 真实的行数加一
            x = 0;
          } else {
            //回到预判前的位置
            x -= textWith;
          }
          //记录每一个字的位置
          position[i][0]=x;
          position[i][1]=textHeight * lineNum + yPadding * (lineNum - 1);
          //判断是否是数字还是字母 (数字和字母应该紧凑点)
          //每次输入完毕 进入下一个输入位置准备就绪
          if (isNumOrLetters(str)) {
            x += textWith + xPaddingMin;
          } else {
            x += textWith + xPadding;
          }
        }
        //根据所画的内容设置控件的高度
        this.setHeight((textHeight +yPadding) * lineNum);
      }
    
    
    
      //工具类:判断是否是字母或者数字
      public boolean isNumOrLetters(String str)
      {
        String regEx="^[A-Za-z0-9_]+$";
        Pattern p=Pattern.compile(regEx);
        Matcher m=p.matcher(str);
        return m.matches();
      }
       // 工具类:在代码中使用dp的方法(因为代码中直接用数字表示的是像素)
      public static int dip2px(Context context, float dip) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (dip * scale + 0.5f);
      }
    }


    展开全文
  • Android设置字间距和行间距

    千次阅读 2017-03-20 13:42:10
    设置字间距用: android:letterSpacingeg:android:letterSpacing = "1.2"其相关方法是 setLetterSpacing(float)设置行间距 android:lineSpacingExtra,直接设置行间距 eg: android:lineSpacingExtra = "3.5sp"2....

    设置字间距用:
    android:letterSpacing

    eg:

    android:letterSpacing = "1.2"

    其相关方法是 setLetterSpacing(float)

    设置行间距

    1. android:lineSpacingExtra,直接设置行间距
      eg:
    android:lineSpacingExtra = "3.5sp"

    2.android:lineSpacingMultiplier,用于设置行间距的倍数
    eg:

    android:lineSpacingMultiplier = "1.2"

    设置行间距相关的方法是:

    void setLineSpacing (float add, float mult)

    第一个参数设置间距的距离,第二个参数设置间距的倍数

    展开全文
  • 生成pdf的中文问题解决办法、导出pdf时,设置段落行间距方法,表单填充,使用itext方法填充相应表单域。
  • 我们可以从表中看到在这里可以定义文本的文字间距、字母间距、装饰、对齐方式、缩进方式行高等属性。
  • label自适应高度可设置行间距字间距
  • 主要介绍了android textview设置字体的行距和字间距的方法,非常简单实用,有需要的小伙伴可以参考下
  • ckeditor设置行间距资源包 1.下载ckeditor的行距插件包 lineheight 2.解压到ckeditor/plugins目录下 3.修改ckeditor目录下的 config.js文件
  • 行间距用: android:lineSpacingMultiplier="1.1" 字间距用:android:letterSpacing="0.5

    行间距用: android:lineSpacingMultiplier="1.1"

    字间距用:android:letterSpacing="0.5"

     

    展开全文
  • 实现的功能: 字间距 行间距 设置下划线 设置关键字 自适应宽高 github:https://github.com/xinge1/LXLabelDemo 简书:http://www.jianshu.com/p/ad7ee4403d03
  • 设置label 的 字间距 和行间距

    千次阅读 2016-05-04 11:24:54
    // 设置 文字间距    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];  NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithSt
  • QT字间距和行间距设置

    千次阅读 2017-08-06 12:46:00
    QGraphicsTextItem 字间距: void QFont::setLetterSpacing ( SpacingType type, qreal spacing ) 行间距,请参考这断代码: Copy code for (QTextBlock it = doc->begin(); it != doc->end(); it = it....
  • Android textview设置行间距及字距

    千次阅读 2019-09-18 17:43:11
    之间的间隔比例: xm中设置 android:letterSpacing="0.05" 或者在java代码中设置: textView.setLetterSpacing(0.05); 之间的距离设置: android:lineSpacingExtra="15dp" ...
  • QT怎么设置字体轮廓、字体位置、字体样式、字体间距、窗口背景色大小、隐藏鼠标图标
  • Label设置行间距,段间距,字间距

    千次阅读 2017-07-11 11:20:55
    Label设置行间距,段间距,字间距 使用NSMutableAttributedString设置label属性 直接上代码- (void)viewDidLoad { [super viewDidLoad]; NSString *text = @"突然想要写点什么,来纪念自己即将逝去的大学四年时光,...
  • 1、设置行间距:android:lineSpacingExtra,取值范围:正数、负数0,正数表示增加相应的大小,负数表示减少相应的大小,0表示无变化 2、设置行间距的倍数:android:lineSpacingMultiplier,取值范围:浮点数,...
  • CSS中文字间距和行间距

    万次阅读 2018-09-25 14:17:56
    文字间距 1,text-align设置文字布局 即text-align:center文字就会在div中居中停放 2,font-size设置文字的大小 即font-size:20px 文字的大小就是20px ...2、letter-spacing来设置字间...
  • 根据要显示字体的多少,行间距字间距的调整,计算出lable总的高度的方法,此demo简单易懂
  • 就像我们平时编写文档的时候,我们需要排版,设置下行或者之间的间距是吧:Android中的TextView也可以进行这样的设置...行间距:Android系统中TextView默认显示中文时会比较紧凑,为了让每行保持的行间距 android
  • CSS设置字间距行间距、首行缩进
  • 比较方便的多行UILabel 可自定义文字间距,行间距,及段落间距 有这方面需求的可以下来用用,直接导入.h .m文件即可 .h里有使用方法
  • 我自己写了一个 方法 //自动换行文字 private Image drawString(Image image,string text,RectangleF rectF,Font font,Brush brush) { if (text != string.Empty &...怎么才能设置 字间距和行间距
  • Android TextView 设置行间距的相对来说比较简单,可以通过设置TextView的android:lineSpacingExtra或android:lineSpacingMultiplier来达到你希望看到的结果。 android:lineSpacingExtra 设置行间距 如下:android...
  • 设置TextView行间距、行高: Android系统中TextView有默认行间距,但是比较窄有的时候需要我们设置每行行间距。 TextView为我们提供了相关设置属性android:lineSpacingExtra或android:lineSpacingMultiplier。 在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 66,759
精华内容 26,703
关键字:

如何设置字间距和行间距