diff mupdf-source/thirdparty/zint/backend/tools/gen_pwr928_table.php @ 2:b50eed0cc0ef upstream

ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4. The directory name has changed: no version number in the expanded directory now.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:43:07 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mupdf-source/thirdparty/zint/backend/tools/gen_pwr928_table.php	Mon Sep 15 11:43:07 2025 +0200
@@ -0,0 +1,48 @@
+<?php
+/* Generate mod 928 powers table for `encode928()` in "composite.c" */
+/*
+    libzint - the open source barcode library
+    Copyright (C) 2020-2024 Robin Stuart <rstuart114@gmail.com>
+*/
+/* SPDX-License-Identifier: BSD-3-Clause */
+
+/* The functions "getBit", "init928" and "encode928" are copyright BSI and are
+   released with permission under the following terms:
+
+   "Copyright subsists in all BSI publications. BSI also holds the copyright, in the
+   UK, of the international standardisation bodies. Except as
+   permitted under the Copyright, Designs and Patents Act 1988 no extract may be
+   reproduced, stored in a retrieval system or transmitted in any form or by any
+   means - electronic, photocopying, recording or otherwise - without prior written
+   permission from BSI.
+
+   "This does not preclude the free use, in the course of implementing the standard,
+   of necessary details such as symbols, and size, type or grade designations. If these
+   details are to be used for any other purpose than implementation then the prior
+   written permission of BSI must be obtained."
+
+   The date of publication for these functions is 31 May 2006
+ */
+
+$cw = array(0, 0, 0, 0, 0, 0, 1);
+$pwr928 = array( $cw );
+
+for ($j = 1; $j < 69; $j++) {
+    for ($v = 0, $i = 6; $i >= 1; $i--) {
+        $v = (2 * $cw[$i]) + (int)($v / 928);
+        $pwr928[$j][$i] = $cw[$i] = $v % 928;
+    }
+    $pwr928[$j][0] = $cw[0] = (2 * $cw[0]) + (int)($v / 928);
+}
+
+printf("static const unsigned short cc_pwr928[69][7] = {\n");
+for ($i = 0; $i < 69; $i++) {
+    printf("    { ");
+    for ($j = 0; $j < 7; $j++) {
+        printf("%3d, ", $pwr928[$i][$j]);
+    }
+    printf("},\n");
+}
+printf("};\n");
+
+/* vim: set ts=4 sw=4 et : */