test-case.blade.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <title>数学公式渲染测试用例</title>
  5. <meta charset="UTF-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" href="/css/katex/katex.min.css">
  8. <style>
  9. body {
  10. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  11. max-width: 900px;
  12. margin: 50px auto;
  13. padding: 20px;
  14. background: #f5f5f5;
  15. }
  16. .container {
  17. background: white;
  18. padding: 40px;
  19. border-radius: 8px;
  20. box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  21. }
  22. h1 {
  23. color: #333;
  24. border-bottom: 3px solid #007bff;
  25. padding-bottom: 10px;
  26. }
  27. .test-case {
  28. margin: 30px 0;
  29. padding: 25px;
  30. background: #f8f9fa;
  31. border-left: 4px solid #007bff;
  32. border-radius: 4px;
  33. }
  34. .test-title {
  35. font-weight: bold;
  36. color: #007bff;
  37. margin-bottom: 15px;
  38. font-size: 18px;
  39. }
  40. .formula-display {
  41. margin: 20px 0;
  42. padding: 15px;
  43. background: white;
  44. border-radius: 4px;
  45. }
  46. .description {
  47. color: #666;
  48. margin-top: 10px;
  49. font-size: 14px;
  50. }
  51. .raw-latex {
  52. background: #272822;
  53. color: #f8f8f2;
  54. padding: 15px;
  55. border-radius: 4px;
  56. font-family: "Courier New", monospace;
  57. font-size: 14px;
  58. margin-top: 10px;
  59. overflow-x: auto;
  60. }
  61. </style>
  62. </head>
  63. <body>
  64. <div class="container">
  65. <h1>🧮 数学公式渲染测试用例</h1>
  66. <div class="test-case">
  67. <div class="test-title">测试用例:二次函数最值问题</div>
  68. <div class="description">LaTeX 原文:</div>
  69. <div class="raw-latex">已知函数 f(x) = 2x^3 - 3x^2 - 12x + 5,求函数在区间 [-2, 3] 上的最大值和最小值。</div>
  70. <div class="description" style="margin-top: 20px;">渲染效果:</div>
  71. <div class="formula-display">
  72. 已知函数 <x-math-render :content="'$f(x) = 2x^3 - 3x^2 - 12x + 5$'" />,求函数在区间 <x-math-render :content="'$[-2, 3]$'" /> 上的最大值和最小值。
  73. </div>
  74. <div class="description">
  75. ✅ <strong>测试点</strong>:
  76. <ul style="margin-top: 10px; line-height: 1.8;">
  77. <li>上标:$x^3$ 和 $x^2$ 应该显示为上标形式</li>
  78. <li>减号:$2x^3 - 3x^2 - 12x + 5$ 中的减号应该正确显示</li>
  79. <li>区间:$[-2, 3]$ 应该显示为数学区间格式</li>
  80. <li>加号:$+ 5$ 中的加号应该正确显示</li>
  81. </ul>
  82. </div>
  83. </div>
  84. <div class="test-case">
  85. <div class="test-title">相关公式测试</div>
  86. <div class="description">导数:</div>
  87. <div class="formula-display">
  88. <x-math-render :content="'$f\'(x) = 6x^2 - 6x - 12$'" />
  89. </div>
  90. <div class="description">求导过程:</div>
  91. <div class="formula-display">
  92. <x-math-render :content="'$f\'(x) = \frac{d}{dx}(2x^3) - \frac{d}{dx}(3x^2) - \frac{d}{dx}(12x) + \frac{d}{dx}(5)$'" />
  93. </div>
  94. <div class="description">化简:</div>
  95. <div class="formula-display">
  96. <x-math-render :content="'$f\'(x) = 6x^2 - 6x - 12$'" />
  97. </div>
  98. </div>
  99. <div class="test-case">
  100. <div class="test-title">边界值测试</div>
  101. <div class="description">区间端点:</div>
  102. <div class="formula-display">
  103. <x-math-render :content="'$x = -2$ 或 $x = 3$'" />
  104. </div>
  105. <div class="description">函数值:</div>
  106. <div class="formula-display">
  107. <x-math-render :content="'$f(-2) = 2(-2)^3 - 3(-2)^2 - 12(-2) + 5 = -16 - 12 + 24 + 5 = 1$'" />
  108. </div>
  109. <div class="formula-display">
  110. <x-math-render :content="'$f(3) = 2(3)^3 - 3(3)^2 - 12(3) + 5 = 54 - 27 - 36 + 5 = -4$'" />
  111. </div>
  112. </div>
  113. <div class="test-case">
  114. <div class="test-title">关键点测试</div>
  115. <div class="description">驻点(导数为零的点):</div>
  116. <div class="formula-display">
  117. <x-math-render :content="'$f\'(x) = 0$'" />
  118. </div>
  119. <div class="description">求解:</div>
  120. <div class="formula-display">
  121. <x-math-render :content="'$6x^2 - 6x - 12 = 0$'" />
  122. </div>
  123. <div class="formula-display">
  124. <x-math-render :content="'$x^2 - x - 2 = 0$'" />
  125. </div>
  126. <div class="formula-display">
  127. <x-math-render :content="'$x = \frac{1 \pm \sqrt{1 + 8}}{2} = \frac{1 \pm 3}{2}$'" />
  128. </div>
  129. <div class="formula-display">
  130. <x-math-render :content="'$x = 2$ 或 $x = -1$'" />
  131. </div>
  132. </div>
  133. </div>
  134. <script src="/js/katex.min.js"></script>
  135. <script src="/js/test-math-debug.js"></script>
  136. <script src="/js/math-render.js"></script>
  137. </body>
  138. </html>