标准25码 Barcode 25

2023-10-31

Code25 码(标准 25 码)
Interleaved 2 of 5

Code25 计算 2of5i.xsl
<?xml version="1.0" encoding="UTF-8"?>
<!-- ========================================================= -->
<!-- -->
<!-- (c) 2003, RenderX -->
<!-- -->
<!-- Author: Alexander Peshkov <peshkov@renderx.com> -->
<!-- -->
<!-- Permission is granted to use this document, copy and -->
<!-- modify free of charge, provided that every derived work -->
<!-- bear a reference to the present document. -->
<!-- -->
<!-- This document contains a computer program written in -->
<!-- XSL Transformations Language. It is published with no -->
<!-- warranty of any kind about its usability, as a mere -->
<!-- example of XSL technology. RenderX shall not be -->
<!-- considered liable for any damage or loss of data caused -->
<!-- by use of this program. -->
<!-- -->
<!-- ========================================================= -->

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:my="codabar-data">

<!-- ========================================================= -->
<!-- This stylesheet contains named template -->
<!-- (barcode-2of5i) that encodes sequence of digits using -->
<!-- 2-of-5 interleaved barcode scheme, with no check digit. -->
<!-- -->
<!-- Mandatory parameters are: -->
<!-- -->
<!-- "value" - a string to encode; can contain -->
<!-- only decimal digits -->
<!-- -->
<!-- Optional parameters are: -->
<!-- -->
<!-- "string" - a human readable string; -->
<!-- represents data encoded in -->
<!-- the barcode in a human-readable form -->
<!-- Optional parameter. -->
<!-- Default is: 'value' with checksum -->
<!-- and non-significant null added when -->
<!-- necessary. -->
<!-- "print-text" - boolean, defines if a human -->
<!-- readable label should be printed. -->
<!-- Default is: 'true'. -->
<!-- "addchecksum" - boolean, defines if checksum should -->
<!-- be added by the barcode generator; -->
<!-- Default is 'false' -->
<!-- "module" - width of the elementary unit -->
<!-- bar/space; -->
<!-- Default is 0.012in -->
<!-- "wide-to-narrow" - width ratio for bars/spaces; -->
<!-- Default is 3.0 -->
<!-- "height" - pattern height (= bar length); -->
<!-- Default is 0.25in -->
<!-- "quiet-horizontal" - quiet zone horizontal margin width; -->
<!-- Default is 0.24in -->
<!-- "quiet-vertical" - quiet zone vertical margin width; -->
<!-- Default is 0.06in -->
<!-- "font-family" - a font family used to print textual -->
<!-- representation of a barcode; -->
<!-- Default is 'Courier' -->
<!-- "font-height" - a height of the font used to print -->
<!-- textual representation of a barcode. -->
<!-- Default is 8pt -->
<!-- ========================================================= -->

<xsl:import href="2of5i-svg.xsl"/>

<xsl:output method="xml"
version="1.0"
indent="yes"/>

<xsl:param name="value"/>
<xsl:param name="string"/>
<xsl:param name="print-text" select="'true'"/>
<xsl:param name="addchecksum" select="'false'"/>
<xsl:param name="module" select="'0.012in'"/>
<xsl:param name="wide-to-narrow" select="3.0"/>
<xsl:param name="height" select="'0.25in'"/>
<xsl:param name="quiet-horizontal" select="'0.24in'"/>
<xsl:param name="quiet-vertical" select="'0.06in'"/>
<xsl:param name="font-family" select="'Courier'"/>
<xsl:param name="font-height" select="'8pt'"/>

<!--
Driver template used for command line processing, an analog of 'Main' function in C
-->
<xsl:template match="/">
<xsl:call-template name="barcode-2of5i">
<xsl:with-param name="value" select="$value"/>
<xsl:with-param name="string" select="$string"/>
<xsl:with-param name="print-text" select="$print-text"/>
<xsl:with-param name="addchecksum" select="$addchecksum"/>
<xsl:with-param name="module" select="$module"/>
<xsl:with-param name="wide-to-narrow" select="$wide-to-narrow"/>
<xsl:with-param name="height" select="$height"/>
<xsl:with-param name="quiet-horizontal" select="$quiet-horizontal"/>
<xsl:with-param name="quiet-vertical" select="$quiet-vertical"/>
<xsl:with-param name="font-family" select="$font-family"/>
<xsl:with-param name="font-height" select="$font-height"/>
</xsl:call-template>
</xsl:template>

<!-- Main template used to create a barcode -->
<xsl:template name="barcode-2of5i">
<xsl:param name="value"/>
<xsl:param name="string"/>
<xsl:param name="print-text" select="'true'"/>
<xsl:param name="addchecksum" select="'false'"/>
<xsl:param name="module" select="'0.012in'"/>
<xsl:param name="wide-to-narrow" select="3.0"/>
<xsl:param name="height" select="'0.25in'"/>
<xsl:param name="quiet-horizontal" select="'0.24in'"/>
<xsl:param name="quiet-vertical" select="'0.06in'"/>
<xsl:param name="font-family" select="'Courier'"/>
<xsl:param name="font-height" select="'8pt'"/>

<!-- Check data consistency -->
<xsl:if test="string-length($value)=0">
<xsl:message terminate="yes">Error: 'value' is not specified.</xsl:message>
</xsl:if>
<xsl:if test="string-length(translate($value,'1234567890',''))!=0">
<xsl:message terminate="no">Error: unexpected characters in 'value'.
<xsl:value-of select="$value"/> /
</xsl:message>
</xsl:if>

<!-- Add checksum if required. -->
<!--
Source string must have even number of digits, justify it with leading '0' if necessary
-->
<xsl:variable name="value-real">
<xsl:if test="((string-length($value) + ($addchecksum='true')) mod 2) != 0">0</xsl:if>
<xsl:value-of select="$value"/>
<xsl:if test="$addchecksum='true'">
<xsl:call-template name="makeChecksum">
<xsl:with-param name="value" select="$value"/>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<!--
Add strart/stop symbols and prepare actual barcode
-->
<xsl:variable name="value-encoded">
<xsl:value-of select="'0000'"/>
<xsl:call-template name="recursive-coder">
<xsl:with-param name="value" select="$value-real"/>
</xsl:call-template>
<xsl:value-of select="'100'"/>
</xsl:variable>

<!--
Call backend to generate SVG image of the barcode
-->
<xsl:call-template name="draw-barcode">
<xsl:with-param name="sequence" select="$value-encoded"/>
<xsl:with-param name="string">
<xsl:choose>
<xsl:when test="string-length($string)=0">
<xsl:value-of select="$value-real"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$string"/>
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param name="print-text" select="$print-text"/>
<xsl:with-param name="module" select="$module"/>
<xsl:with-param name="height" select="$height"/>
<xsl:with-param name="quiet-horizontal" select="$quiet-horizontal"/>
<xsl:with-param name="quiet-vertical" select="$quiet-vertical"/>
<xsl:with-param name="font-family" select="$font-family"/>
<xsl:with-param name="font-height" select="$font-height"/>
<xsl:with-param name="value" select="$value-real"/>
</xsl:call-template>
</xsl:template>

<!--
=========================================================
-->
<!--
Calculate module 10 checksum character
-->
<xsl:template name="makeChecksum">
<xsl:param name="value"/>
<xsl:param name="position" select="2"/>
<xsl:param name="sum-odd" select="0"/>
<xsl:param name="sum-even" select="0"/>

<xsl:choose>
<xsl:when test="string-length($value) > 0">
<xsl:variable name="digit" select="substring($value, string-length($value))"/>
<xsl:call-template name="makeChecksum">
<xsl:with-param name="value" select="substring($value,1,string-length($value) - 1)"/>
<xsl:with-param name="sum-odd" select="$sum-odd + $digit*($position mod 2)"/>
<xsl:with-param name="sum-even" select="$sum-even + $digit*(($position+1) mod 2)"/>
<xsl:with-param name="position" select="$position + 1"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="(10 - (($sum-odd + 3*$sum-even) mod 10)) mod 10"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<!--
=========================================================
-->
<!--
Encode string of digits using 2 of 5 interleave encoding
-->
<xsl:template name="recursive-coder">
<xsl:param name="value"/>

<!--
Convert two leading digits into binary sequence encoded with 2 of 5 code
-->
<!-- <xsl:variable name="digit1" select="document('')//mynum2bars/entry[@digit=substring($value, 1, 1)]/text()"/> -->
<!-- <xsl:variable name="digit2" select="document('')//mynum2bars/entry[@digit=substring($value, 2, 1)]/text()"/> -->
<xsl:variable name="digit1" select="document('2of5i-num2bars.xml')/num2bars/entry[@digit=substring($value, 1, 1)]/text()"/>
<xsl:variable name="digit2" select="document('2of5i-num2bars.xml')/num2bars/entry[@digit=substring($value, 2, 1)]/text()"/>

<!-- Interleave bits of two binary sequences -->
<xsl:value-of select="concat(substring($digit1,1,1), substring($digit2,1,1),
substring($digit1,2,1), substring($digit2,2,1),
substring($digit1,3,1), substring($digit2,3,1),
substring($digit1,4,1), substring($digit2,4,1),
substring($digit1,5,1), substring($digit2,5,1))"/>

<!--
If there is more digits to be drawn - activate recursion
-->
<xsl:if test="string-length($value) > 2">
<xsl:call-template name="recursive-coder">
<xsl:with-param name="value" select="substring($value,3)"/>
</xsl:call-template>
</xsl:if>
</xsl:template>

</xsl:stylesheet>



Code25 编码 2of5i-num2bars.xml
<?xml version="1.0"  encoding="UTF-8"?>
<num2bars>
<entry digit="0">00110</entry>
<entry digit="1">10001</entry>
<entry digit="2">01001</entry>
<entry digit="3">11000</entry>
<entry digit="4">00101</entry>
<entry digit="5">10100</entry>
<entry digit="6">01100</entry>
<entry digit="7">00011</entry>
<entry digit="8">10010</entry>
<entry digit="9">01010</entry>
</num2bars>


Code25 生成图像 2of5i-svg.xsl
<?xml version="1.0" encoding="UTF-8"?>
<!-- ========================================================= -->
<!-- -->
<!-- (c) 2003, RenderX -->
<!-- -->
<!-- Author: Alexander Peshkov <peshkov@renderx.com> -->
<!-- -->
<!-- Permission is granted to use this document, copy and -->
<!-- modify free of charge, provided that every derived work -->
<!-- bear a reference to the present document. -->
<!-- -->
<!-- This document contains a computer program written in -->
<!-- XSL Transformations Language. It is published with no -->
<!-- warranty of any kind about its usability, as a mere -->
<!-- example of XSL technology. RenderX shall not be -->
<!-- considered liable for any damage or loss of data caused -->
<!-- by use of this program. -->
<!-- -->
<!-- ========================================================= -->

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:svg="http://www.w3.org/2000/svg">

<!-- ========================================================= -->
<!-- This stylesheet exports a named template used to draw -->
<!-- a 2 of 5 interleave barcode as an SVG image. -->
<!-- When used stand-alone, it creates SVG from a code -->
<!-- sequence passed in a parameter -->
<!-- -->
<!-- Mandatory parameters are: -->
<!-- -->
<!-- "sequence" - sequence of barcode states -->
<!-- to be drawn. -->
<!-- -->
<!-- Optional parameters are: -->
<!-- -->
<!-- "string" - a human readable string; -->
<!-- represents data encoded in -->
<!-- the barcode in a human-readable form -->
<!-- Default is empty string -->
<!-- "print-text" - boolean, defines if a human -->
<!-- readable label should be printed. -->
<!-- "module" - width of the elementary unit -->
<!-- bar/space; -->
<!-- Default is 0.012in -->
<!-- "wide-to-narrow" - width ratio for bars/spaces; -->
<!-- Default is 3.0 -->
<!-- "height" - pattern height (= bar length). -->
<!-- Default is 0.25in -->
<!-- "quiet-horizontal" - quiet zone horizontal margin width -->
<!-- Default is 0.24in -->
<!-- "quiet-vertical" - quiet zone vertical margin width -->
<!-- Default is 0.06in -->
<!-- "font-family" - a font family used to print textual -->
<!-- representation of a barcode. -->
<!-- Default is 'Courier' -->
<!-- "font-height" - a height of the font used to print -->
<!-- textual representation of a barcode. -->
<!-- Default is 8pt -->
<!-- ========================================================= -->

<xsl:output method="xml"
version="1.0"
indent="yes"/>

<!-- Bar states code sequence -->
<xsl:param name="sequence" select="''"/>
<!-- Information encoded by given barcode states -->
<xsl:param name="string" select="''"/>
<!-- Is human readable string printed under barcode? -->
<xsl:param name="print-text" select="'true'"/>
<!-- Optional parameters for drawing -->
<xsl:param name="module" select="'0.012in'"/>
<xsl:param name="wide-to-narrow" select="3.0"/>
<xsl:param name="height" select="'0.25in'"/>
<xsl:param name="quiet-horizontal" select="'0.24in'"/>
<xsl:param name="quiet-vertical" select="'0.06in'"/>
<xsl:param name="font-family" select="'Courier'"/>
<xsl:param name="font-height" select="'8pt'"/>
<xsl:param name="value" select="''"/>

<!--
Driver template used for command line processing, an analog of 'Main' function in C
-->
<xsl:template match="/">
<xsl:call-template name="draw-barcode">
<xsl:with-param name="sequence" select="$sequence"/>
<xsl:with-param name="string" select="$string"/>
<xsl:with-param name="print-text" select="$print-text"/>
<xsl:with-param name="module" select="$module"/>
<xsl:with-param name="wide-to-narrow" select="$wide-to-narrow"/>
<xsl:with-param name="height" select="$height"/>
<xsl:with-param name="quiet-horizontal" select="$quiet-horizontal"/>
<xsl:with-param name="quiet-vertical" select="$quiet-vertical"/>
<xsl:with-param name="font-family" select="$font-family"/>
<xsl:with-param name="font-height" select="$font-height"/>
<xsl:with-param name="value" select="$value"/>
</xsl:call-template>
</xsl:template>

<!-- Main template used to create a barcode -->
<xsl:template name="draw-barcode">
<!-- Bar states code sequence -->
<xsl:param name="sequence" select="''"/>
<!-- Information encoded by given barcode states -->
<xsl:param name="string" select="''"/>
<!-- Is human readable string printed under barcode? -->
<xsl:param name="print-text" select="'true'"/>
<!-- Optional parameters for drawing -->
<xsl:param name="module" select="'0.012in'"/>
<xsl:param name="wide-to-narrow" select="3.0"/>
<xsl:param name="height" select="'0.25in'"/>
<xsl:param name="quiet-horizontal" select="'0.24in'"/>
<xsl:param name="quiet-vertical" select="'0.06in'"/>
<xsl:param name="font-family" select="'Courier'"/>
<xsl:param name="font-height" select="'8pt'"/>
<xsl:param name="value"/>

<!-- Parse narrow bar/space width specifier -->
<xsl:variable name="narrow-real">
<xsl:call-template name="convert-to-basic-units">
<xsl:with-param name="length" select="$module"/>
</xsl:call-template>
</xsl:variable>
<!-- Calculate wide bar/space width -->
<xsl:variable name="wide-real" select="round($narrow-real * $wide-to-narrow)"/>
<!-- Parse bar height specifier -->
<xsl:variable name="height-real">
<xsl:call-template name="convert-to-basic-units">
<xsl:with-param name="length" select="$height"/>
</xsl:call-template>
</xsl:variable>
<!--
Parse quiet zone vertical/horizontal margins specifiers
-->
<xsl:variable name="quiet-horizontal-real">
<xsl:call-template name="convert-to-basic-units">
<xsl:with-param name="length" select="$quiet-horizontal"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="quiet-vertical-real">
<xsl:call-template name="convert-to-basic-units">
<xsl:with-param name="length" select="$quiet-vertical"/>
</xsl:call-template>
</xsl:variable>
<!-- Calculate font height and line-height-->
<xsl:variable name="font-height-real">
<xsl:call-template name="convert-to-basic-units">
<xsl:with-param name="length" select="$font-height"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="line-height-real" select="round($font-height-real*1.2)*number($print-text='true')"/>
<!-- Useful variable - length of string -->
<xsl:variable name="length">
<xsl:value-of select="string-length($sequence)"/>
</xsl:variable>
<!-- Calculate codesequence length -->
<xsl:variable name="code-width-real" select="$wide-real*(($length - 7)*2 div 5+1) + $narrow-real*(($length - 7)*3 div 5+6)"/>
<!-- Calculate drawing area dimensions -->
<xsl:variable name="area-width-real" select="$code-width-real + 2*$quiet-horizontal-real"/>
<xsl:variable name="area-height-real" select="$height-real + $line-height-real + 2*$quiet-vertical-real"/>

<!-- Establish SVG drawing area -->
<!-- Drawing unit is equal to 1/360mm -->
<svg:svg width="{concat($area-width-real div 360, 'mm')}"
height="{concat($area-height-real div 360, 'mm')}"
viewBox="{concat('0 0 ', $area-width-real, ' ', $area-height-real)}">
<desc>
<barcode value="{$value}" type="i2of5"/>
</desc>
<!-- Prepare actual path -->
<xsl:variable name="path">
<!-- Call template to reqursively draw all bars -->
<xsl:call-template name="recursive-draw">
<xsl:with-param name="sequence" select="$sequence"/>
<xsl:with-param name="narrow-real" select="$narrow-real"/>
<xsl:with-param name="wide-real" select="$wide-real"/>
<xsl:with-param name="height-real" select="$height-real"/>
</xsl:call-template>
</xsl:variable>
<!--
Position a pen at the beggining of the barcode and make the actual drawing
-->
<xsl:variable name="full-path" select="concat('M ', $quiet-horizontal-real, ' ' , $quiet-vertical-real, $path)"/>
<svg:path d="{$full-path}" fill="black"/>
<xsl:if test="$print-text='true'">
<svg:text x="{$area-width-real div 2}" y="{$quiet-vertical-real*2 + $height-real + $font-height-real}" text-anchor="middle" font-family="{$font-family}" font-size="{$font-height-real}" fill="black">
<xsl:value-of select="$string"/>
</svg:text>
</xsl:if>
</svg:svg>
</xsl:template>

<!--
Draws single bar and calls itself if there are more bars to be drawn
-->
<xsl:template name="recursive-draw">
<xsl:param name="sequence"/>
<xsl:param name="narrow-real"/>
<xsl:param name="wide-real"/>
<xsl:param name="height-real"/>
<xsl:param name="position" select="1"/>

<xsl:variable name="barstate" select="substring($sequence, 1, 1)"/>
<!-- Select bar width -->
<xsl:variable name="width">
<xsl:choose>
<xsl:when test="$barstate=1">
<xsl:value-of select="$wide-real"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$narrow-real"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>

<!-- Draw black or white bar -->
<xsl:choose>
<xsl:when test="($position mod 2) = 1">
<!-- Create appropriate path segment -->
<xsl:value-of select="concat(' l 0 ', $height-real, ' ', $width, ' 0 0 -', $height-real, ' z m ', $width, ' 0')"/>
</xsl:when>
<xsl:otherwise>
<!-- Create appropriate path segment -->
<xsl:value-of select="concat(' m ', $width, ' 0')"/>
</xsl:otherwise>
</xsl:choose>

<xsl:if test="string-length($sequence) > 1">
<xsl:call-template name="recursive-draw">
<xsl:with-param name="sequence" select="substring($sequence,2)"/>
<xsl:with-param name="narrow-real" select="$narrow-real"/>
<xsl:with-param name="wide-real" select="$wide-real"/>
<xsl:with-param name="height-real" select="$height-real"/>
<xsl:with-param name="position" select="$position + 1"/>
</xsl:call-template>
</xsl:if>
</xsl:template>

<!-- Utility templates -->
<!--
=========================================================
-->
<!--
Convert any lengths to the basic units.
-->
<xsl:template name="convert-to-basic-units">
<xsl:param name="length"/>

<xsl:variable name="length-numeric-value" select="translate ($length, 'ptxcinme ', '')"/>
<xsl:variable name="length-unit" select="translate ($length, '-0123456789. ', '')"/>
<xsl:variable name="length-scale-factor">

<xsl:call-template name="get-unit-scaling-factor">
<xsl:with-param name="unit" select="$length-unit"/>
</xsl:call-template>
</xsl:variable>

<xsl:value-of select="round($length-numeric-value * $length-scale-factor)"/>
</xsl:template>

<!--
=========================================================
-->
<!--
This template expresses all length units in 1/360s of mm.
-->
<!--
This is the largest unit in which both 1pt and 1 mm get
-->
<!--
integer values. Also spellchecks length units.
-->
<xsl:template name="get-unit-scaling-factor">
<xsl:param name="unit"/>

<xsl:choose>
<xsl:when test="$unit = 'cm'">3600</xsl:when>
<xsl:when test="$unit = 'mm'">360</xsl:when>
<xsl:when test="$unit = 'in'">9144</xsl:when>
<xsl:when test="$unit = 'pt'">127</xsl:when>
<xsl:when test="$unit = 'pc'">1524</xsl:when>
<xsl:when test="$unit = 'em'">
<xsl:text>1524</xsl:text> <!-- defaulting to 12pt -->
<xsl:message>
[BARCODE GENERATOR] Units of 'em' should not be mixed with other units;
assuming 1 em = 1 pica.
</xsl:message>
</xsl:when>
<xsl:when test="$unit = 'ex'">
<xsl:text>700</xsl:text> <!-- defaulting to 12pt x 0.46 -->
<xsl:message>
[BARCODE GENERATOR] Units of 'ex' should not be mixed with other units;
assuming 1 ex = 0.46 pica.
</xsl:message>
</xsl:when>
<xsl:otherwise>
<xsl:text>360</xsl:text> <!-- defaulting to 1mm -->
<xsl:message>
[BARCODE GENERATOR] Unknown unit '
<xsl:value-of select="$unit"/>
' should not be mixed with other units;
assuming 1
<xsl:value-of select="$unit"/>
= 1 mm.
</xsl:message>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

标准25码 Barcode 25 的相关文章

随机推荐

  • 高清!手把手教你Python爬取LOL英雄皮肤套图

    作者 锋小刀 微信搜索 Python与Excel之交 关注我的公众号查看更多内容 目标URL https lol qq com data info heros shtml 里面是LOL所有英雄的头像和名称 本次的爬取任务是该网页中所有英雄的
  • 【机器学习】竞争神经网络(Competitive Neural Network)的python实现

    机器学习 竞争神经网络 Competitive Neural Network 的python实现 一 竞争神经网络原理 1 1 生物学原理 1 2 网络结构与模型训练 二 竞争神经网络的python实现 参考资料 我们前面介绍过基于机器学习
  • 软件测试之测试策略:黑盒和白盒

    软件测试策略 黑盒测试和白盒测试 1 基本概念 测试 是通过运行代码的方式来检验程序和需求的符合性 不管我们使用什么样的测试策略 最终都是需要运行一个个测试用例 检验合理性 个人认为 黑盒和白盒 更多是两种不同的设计测试用例的思想 1 1
  • web界面上传文件到服务器,webuploader实现上传图片到服务器功能

    本文为大家分享了webuploader实现上传图片到服务器的具体代码 供大家参考 具体内容如下 效果图 一 引入资源文件 1 1 引入webuploader css文件 1 2 引入webuploader min js文件 四 java代码
  • java php python外包赚钱_现阶段学习php开发,python,和java哪个行业前景更好点。?...

    moduleinfo card count count phone 1 count 1 search count count phone 7 count 7 card des 阿里云实时计算 Alibaba Cloud Realtime C
  • Unity-UI-Text组件

    Unity UI Text组件 1 基础知识 属性名称 解释说明 Text 文本框 里面用来写想要展示的文本 Font Style 字体样式 可选择粗体 斜体 粗体加斜体 Font Size 字体大小 可以调节字体的大小 Line Spac
  • Qt - C++ - QWidget和QFrame的详细区别

    QWidget和QFrame是Qt框架中的两个重要类 用于创建用户界面 它们之间的详细区别如下 功能和用途 QWidget是Qt中的一个基本窗口小部件 它可以用于创建自定义的图形用户界面 GUI 它是一个顶层的容器小部件 可以包含其他小部件
  • Python使用RMF聚类分析客户价值

    投资机构或电商企业等积累的客户交易数据繁杂 需要根据用户的以往消费记录分析出不同用户群体的特征与价值 再针对不同群体提供不同的营销策略 用户分析指标 根据美国数据库营销研究所Arthur Hughes的研究 客户数据库中有三个神奇的要素 这
  • UCF101动作识别数据集简介绍及数据预处理

    文章目录 一 数据集简介 二 数据集获取及解压缩 1 数据下载 2 数据集解压缩 三 数据集划分 四 数据集预处理 1 生成pkl文件 2 直接对视频文件处理 一 数据集简介 UCF101是一个现实动作视频的动作识别数据集 收集自YouTu
  • Android注册页面

    布局文件activity main xml
  • 枚举类中通过code值获取对应的desc值

    Getter NoArgsConstructor public enum TaskRecordTypeEnum STOPTASK 0 禁用任务 STARTTASK 1 启用任务 private int code private String
  • 在SpringBoot中使用AOP获取HttpServletRequest、HttpSession 内容

    POM xml添加AOP依赖
  • python:超大整数的运算

    为什么80 的码农都做不了架构师 gt gt gt a pow 10 100 b pow 10 100 print a print a 3 print a b 3 结果 10000000000000000000000000000000000
  • Python关于列表list

    Python的列表数据类型包含更多的方法 这里是所有的列表对象方法 list append x 把一个元素添加到列表的结尾 相当于a len a x list extend L 将一个给定列表中的所有元素都添加到另一个列表中 相当于a le
  • MQTT vs webSocket协议

    边缘服务器采用了容器和微服务架构 其中重要的一个方面就是要选择一个高效率的消息系统 用于微服务之间的消息交换 为什么选择websocket 协议 modular 2 edge 设计了自己的消息系统base service 它采纳了webso
  • aps是什么意思_APS系统是什么意思?起什么作用

    原标题 APS系统是什么意思 起什么作用 APS系统是什么意思 起什么作用 随着企业规模不断扩大 在经营管理方面会面临各种各样的问题 为了帮助解决此类问题 很多公司都会引入APS高级排程系统帮助进行生产管理的优化 那APS系统是什么意思 起
  • JMeter压测常见面试问题

    1 JMeter可以模拟哪些类型的负载 JMeter可以模拟各种类型的负载 包括但不限于Web应用程序 API 数据库 FTP SMTP JMS SOAP RESTful Web服务等 这使得JMeter成为一个功能强大且灵活的压力测试工具
  • Linux网络设备之注销

    在注销网络设备时 会调用pci driver gt remove函数 以e100网卡驱动为例 实际调用e100 remove 该函数调用函数unregister netdev进行设备注销操作 函数调用关系图如下 注销分为两步 1 回滚注册操
  • 仿阿姨帮

    实例简介 仿阿姨帮 58到家上门O2O系统源码 BAOCMS二次开发 七牛云 是一款PHP MYSQL开发制作的在线上门O2O系统 PC WAP 微信端等功能 在BAOCMS基础上二次开发的东西内核是BAOCMS 最新版内核 修复了所有的功
  • 标准25码 Barcode 25

    Code25 码 标准 25 码 Interleaved 2 of 5 Code25 计算 2of5i xsl